Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 5 additions & 20 deletions llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h
Original file line number Diff line number Diff line change
Expand Up @@ -122,15 +122,13 @@ struct ParseInstructionInfo {
: AsmRewrites(rewrites) {}
};

enum OperandMatchResultTy {
MatchOperand_Success, // operand matched successfully
MatchOperand_NoMatch, // operand did not match
MatchOperand_ParseFail // operand matched but had errors
};

/// Ternary parse status returned by various parse* methods.
class ParseStatus {
enum class StatusTy { Success, Failure, NoMatch } Status;
enum class StatusTy {
Success, // operand matched successfully
Failure, // operand matched but had errors
NoMatch // operand did not match
} Status;

public:
#if __cplusplus >= 202002L
Expand All @@ -152,19 +150,6 @@ class ParseStatus {
constexpr bool isSuccess() const { return Status == StatusTy::Success; }
constexpr bool isFailure() const { return Status == StatusTy::Failure; }
constexpr bool isNoMatch() const { return Status == StatusTy::NoMatch; }

// Allow implicit conversions to / from OperandMatchResultTy.
LLVM_DEPRECATED("Migrate to ParseStatus", "")
constexpr ParseStatus(OperandMatchResultTy R)
: Status(R == MatchOperand_Success ? Success
: R == MatchOperand_ParseFail ? Failure
: NoMatch) {}
LLVM_DEPRECATED("Migrate to ParseStatus", "")
constexpr operator OperandMatchResultTy() const {
return isSuccess() ? MatchOperand_Success
: isFailure() ? MatchOperand_ParseFail
: MatchOperand_NoMatch;
}
};

enum class DiagnosticPredicateTy {
Expand Down