14 #ifndef LLVM_MC_MCPARSER_ASMLEXER_H
15 #define LLVM_MC_MCPARSER_ASMLEXER_H
19 #include "llvm/Support/DataTypes.h"
33 bool IsAtStartOfStatement;
34 bool IsParsingMSInlineAsm;
36 void operator=(
const AsmLexer&) =
delete;
53 bool ShouldSkipSpace =
true)
override;
58 bool isAtStartOfComment(
const char *
Ptr);
59 bool isAtStatementSeparator(
const char *
Ptr);
61 AsmToken ReturnError(
const char *Loc,
const std::string &Msg);
70 AsmToken LexHexFloatLiteral(
bool NoIntDigits);
void setParsingMSInlineAsm(bool V)
AsmLexer - Lexer class for assembly files.
void setBuffer(StringRef Buf, const char *ptr=nullptr)
Generic assembler lexer interface, for use by target specific assembly lexers.
Target independent representation for an assembler token.
size_t peekTokens(MutableArrayRef< AsmToken > Buf, bool ShouldSkipSpace=true) override
Look ahead an arbitrary number of tokens.
This class is intended to be used as a base class for asm properties and features specific to the tar...
MutableArrayRef - Represent a mutable reference to an array (0 or more elements consecutively in memo...
StringRef LexUntilEndOfStatement() override
AsmToken LexToken() override
LexToken - Read the next token and return its code.
const MCAsmInfo & getMAI() const
StringRef - Represent a constant reference to a string, i.e.