Tensor Comprehensions
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
lang::Parser Struct Reference

#include <parser.h>

Collaboration diagram for lang::Parser:

Public Member Functions

 Parser (const std::string &str)
 
TreeRef parseIdent ()
 
TreeRef parseConst ()
 
TreeRef parseBaseExp ()
 
TreeRef parseTrinary (TreeRef cond, const SourceRange &range, int binary_prec)
 
TreeRef parseExp (int precedence=0)
 
TreeRef parseList (int begin, int sep, int end, std::function< TreeRef(int)> parse)
 
TreeRef parseNonEmptyList (int sep, std::function< TreeRef(int)> parse)
 
TreeRef parseExpList ()
 
TreeRef parseIdentList ()
 
TreeRef parseRangeConstraint ()
 
TreeRef parseLetBinding ()
 
TreeRef parseWhereClause ()
 
TreeRef parseParam ()
 
TreeRef parseWhereClauses ()
 
TreeRef parseEquivalent ()
 
TreeRef parseAssignment ()
 
TreeRef parseStmt ()
 
TreeRef parseScalarType ()
 
TreeRef parseOptionalIdentList ()
 
TreeRef parseDimList ()
 
TreeRef parseOptionalDimList ()
 
TreeRef parseType ()
 
TreeRef parseFunction ()
 

Public Attributes

Lexer L
 

Private Member Functions

TreeRef d (double v)
 
TreeRef s (const std::string &s)
 
TreeRef c (int kind, const SourceRange &range, TreeList &&trees)
 

Private Attributes

SharedParserDatashared
 

Constructor & Destructor Documentation

lang::Parser::Parser ( const std::string &  str)
inline

Member Function Documentation

TreeRef lang::Parser::c ( int  kind,
const SourceRange range,
TreeList &&  trees 
)
inlineprivate
TreeRef lang::Parser::d ( double  v)
inlineprivate
TreeRef lang::Parser::parseAssignment ( )
inline
TreeRef lang::Parser::parseBaseExp ( )
inline
TreeRef lang::Parser::parseConst ( )
inline
TreeRef lang::Parser::parseDimList ( )
inline
TreeRef lang::Parser::parseEquivalent ( )
inline
TreeRef lang::Parser::parseExp ( int  precedence = 0)
inline
TreeRef lang::Parser::parseExpList ( )
inline
TreeRef lang::Parser::parseFunction ( )
inline
TreeRef lang::Parser::parseIdent ( )
inline
TreeRef lang::Parser::parseIdentList ( )
inline
TreeRef lang::Parser::parseLetBinding ( )
inline
TreeRef lang::Parser::parseList ( int  begin,
int  sep,
int  end,
std::function< TreeRef(int)>  parse 
)
inline
TreeRef lang::Parser::parseNonEmptyList ( int  sep,
std::function< TreeRef(int)>  parse 
)
inline
TreeRef lang::Parser::parseOptionalDimList ( )
inline
TreeRef lang::Parser::parseOptionalIdentList ( )
inline
TreeRef lang::Parser::parseParam ( )
inline
TreeRef lang::Parser::parseRangeConstraint ( )
inline
TreeRef lang::Parser::parseScalarType ( )
inline
TreeRef lang::Parser::parseStmt ( )
inline
TreeRef lang::Parser::parseTrinary ( TreeRef  cond,
const SourceRange range,
int  binary_prec 
)
inline
TreeRef lang::Parser::parseType ( )
inline
TreeRef lang::Parser::parseWhereClause ( )
inline
TreeRef lang::Parser::parseWhereClauses ( )
inline
TreeRef lang::Parser::s ( const std::string &  s)
inlineprivate

Member Data Documentation

Lexer lang::Parser::L
SharedParserData& lang::Parser::shared
private

The documentation for this struct was generated from the following file: