|
LLVM
4.0.0
|
Generic assembler lexer interface, for use by target specific assembly lexers. More...
#include <MCAsmLexer.h>
Public Member Functions | |
| virtual | ~MCAsmLexer () |
| const AsmToken & | Lex () |
| Consume the next token from the input stream and return it. More... | |
| void | UnLex (AsmToken const &Token) |
| bool | isAtStartOfStatement () |
| virtual StringRef | LexUntilEndOfStatement ()=0 |
| SMLoc | getLoc () const |
| Get the current source location. More... | |
| const AsmToken & | getTok () const |
| Get the current (last) lexed token. More... | |
| const AsmToken | peekTok (bool ShouldSkipSpace=true) |
| Look ahead at the next token to be lexed. More... | |
| virtual size_t | peekTokens (MutableArrayRef< AsmToken > Buf, bool ShouldSkipSpace=true)=0 |
| Look ahead an arbitrary number of tokens. More... | |
| SMLoc | getErrLoc () |
| Get the current error location. More... | |
| const std::string & | getErr () |
| Get the current error string. More... | |
| AsmToken::TokenKind | getKind () const |
| Get the kind of current token. More... | |
| bool | is (AsmToken::TokenKind K) const |
Check if the current token has kind K. More... | |
| bool | isNot (AsmToken::TokenKind K) const |
Check if the current token has kind K. More... | |
| void | setSkipSpace (bool val) |
| Set whether spaces should be ignored by the lexer. More... | |
| bool | getAllowAtInIdentifier () |
| void | setAllowAtInIdentifier (bool v) |
| void | setCommentConsumer (AsmCommentConsumer *CommentConsumer) |
Protected Member Functions | |
| MCAsmLexer () | |
| virtual AsmToken | LexToken ()=0 |
| void | SetError (SMLoc errLoc, const std::string &err) |
Protected Attributes | |
| const char * | TokStart |
| bool | SkipSpace |
| bool | AllowAtInIdentifier |
| bool | IsAtStartOfStatement |
| AsmCommentConsumer * | CommentConsumer |
Generic assembler lexer interface, for use by target specific assembly lexers.
Definition at line 147 of file MCAsmLexer.h.
|
protected |
Definition at line 15 of file MCAsmLexer.cpp.
References llvm::AsmToken::Space.
|
virtual |
Definition at line 21 of file MCAsmLexer.cpp.
|
inline |
Definition at line 250 of file MCAsmLexer.h.
References AllowAtInIdentifier.
|
inline |
Get the current error string.
Definition at line 234 of file MCAsmLexer.h.
Referenced by llvm::AsmLexer::peekTokens().
|
inline |
Get the current error location.
Definition at line 229 of file MCAsmLexer.h.
Referenced by llvm::AsmLexer::peekTokens().
|
inline |
Get the kind of current token.
Definition at line 239 of file MCAsmLexer.h.
References llvm::AsmToken::getKind(), and getTok().
| SMLoc MCAsmLexer::getLoc | ( | ) | const |
Get the current source location.
Definition at line 24 of file MCAsmLexer.cpp.
References llvm::SMLoc::getFromPointer(), and TokStart.
Get the current (last) lexed token.
Definition at line 207 of file MCAsmLexer.h.
Referenced by getKind(), llvm::MCAsmParser::getTok(), is(), and isNot().
|
inline |
Check if the current token has kind K.
Definition at line 242 of file MCAsmLexer.h.
References getTok(), and llvm::AsmToken::is().
Referenced by llvm::AsmLexer::LexToken().
|
inline |
Definition at line 199 of file MCAsmLexer.h.
References IsAtStartOfStatement.
|
inline |
Check if the current token has kind K.
Definition at line 245 of file MCAsmLexer.h.
References getTok(), and llvm::AsmToken::isNot().
Referenced by expectAbsExpression().
Consume the next token from the input stream and return it.
The lexer will continuosly return the end-of-file token once the end of the main input file has been reached.
Definition at line 180 of file MCAsmLexer.h.
References assert(), llvm::AsmToken::EndOfStatement, IsAtStartOfStatement, LexToken(), and T.
Referenced by llvm::MCAsmParser::Error(), expectAbsExpression(), and llvm::MCAsmParser::parseEOL().
|
protectedpure virtual |
Implemented in llvm::AsmLexer.
Referenced by Lex().
|
pure virtual |
Implemented in llvm::AsmLexer.
Look ahead at the next token to be lexed.
Definition at line 212 of file MCAsmLexer.h.
References assert(), and peekTokens().
|
pure virtual |
|
inline |
Definition at line 251 of file MCAsmLexer.h.
References AllowAtInIdentifier.
|
inline |
Definition at line 253 of file MCAsmLexer.h.
References CommentConsumer.
Definition at line 168 of file MCAsmLexer.h.
Referenced by llvm::AsmLexer::peekTokens().
|
inline |
Set whether spaces should be ignored by the lexer.
Definition at line 248 of file MCAsmLexer.h.
References SkipSpace.
Definition at line 194 of file MCAsmLexer.h.
References IsAtStartOfStatement, and Token.
Referenced by llvm::AsmLexer::LexToken(), and llvm::MCAsmParser::parseEOL().
|
protected |
Definition at line 160 of file MCAsmLexer.h.
Referenced by llvm::AsmLexer::AsmLexer(), getAllowAtInIdentifier(), and setAllowAtInIdentifier().
|
protected |
Definition at line 162 of file MCAsmLexer.h.
Referenced by setCommentConsumer().
|
protected |
Definition at line 161 of file MCAsmLexer.h.
Referenced by isAtStartOfStatement(), Lex(), and UnLex().
|
protected |
Definition at line 159 of file MCAsmLexer.h.
Referenced by llvm::AsmLexer::LexToken(), llvm::AsmLexer::peekTokens(), and setSkipSpace().
|
protected |
Definition at line 158 of file MCAsmLexer.h.
Referenced by getLoc(), llvm::AsmLexer::LexToken(), llvm::AsmLexer::LexUntilEndOfStatement(), llvm::AsmLexer::peekTokens(), and llvm::AsmLexer::setBuffer().
1.8.6