|
static const IR::P4Program * | parse (FILE *in, std::string_view sourceFile, unsigned sourceLine=1) |
|
static const IR::P4Program * | parse (std::istream &in, std::string_view sourceFile, unsigned sourceLine=1) |
|
static const IR::Constant * | parseConstant (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::Vector< IR::Expression > * | parseConstantList (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::Expression * | parseConstantOrStringLiteral (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::Vector< IR::Expression > * | parseConstantOrStringLiteralList (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::Vector< IR::Expression > * | parseConstantPair (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::Vector< IR::Expression > * | parseConstantTriple (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::Expression * | parseExpression (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::Vector< IR::Expression > * | parseExpressionList (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::Vector< IR::Expression > * | parseExpressionPair (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::Vector< IR::Expression > * | parseExpressionTriple (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::IndexedVector< IR::NamedExpression > * | parseKvList (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::Vector< IR::Expression > * | parseP4rtTranslationAnnotation (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static std::pair< const IR::P4Program *, const Util::InputSources * > | parseProgramSources (FILE *in, std::string_view sourceFile, unsigned sourceLine=1) |
|
static std::pair< const IR::P4Program *, const Util::InputSources * > | parseProgramSources (std::istream &in, std::string_view sourceFile, unsigned sourceLine=1) |
|
static const IR::StringLiteral * | parseStringLiteral (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::Vector< IR::Expression > * | parseStringLiteralList (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::Vector< IR::Expression > * | parseStringLiteralPair (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
static const IR::Vector< IR::Expression > * | parseStringLiteralTriple (const Util::SourceInfo &srcInfo, const IR::Vector< IR::AnnotationToken > &body) |
|
|
void | onReadErrorDeclaration (IR::Type_Error *error) |
| Notify that the parser parsed a P4 error declaration.
|
|
void | onParseError (const Util::SourceInfo &location, const std::string &message) |
|
void | onReadComment (const char *text, bool lineComment) |
|
void | onReadFileName (const char *text) |
| Notify that the lexer read a filename from a line directive.
|
|
void | onReadIdentifier (cstring id) |
| Notify that the lexer read an identifier, @id.
|
|
void | onReadLineNumber (const char *text) |
| Notify that the lexer read a line number from a line directive.
|
|
void | onReadToken (const char *text) |
| Notify that the lexer read a token. @text is the matched source text.
|
|
A ParserDriver that can parse P4-16 programs.