|
MXVM 1.8.1
Virtual Machine, Compiler, and Pascal Frontend
|
Validator for MXVM programs — checks variable/label usage and instruction operand specifications. More...
#include "mxvm/instruct.hpp"#include "scanner/scanner.hpp"#include <string>#include <unordered_map>#include <unordered_set>#include <vector>

Go to the source code of this file.
Classes | |
| struct | mxvm::ParsedOp |
| A parsed operand with its kind, text, and source location. More... | |
| struct | mxvm::UseVar |
| Records a variable usage site for validation. More... | |
| struct | mxvm::UseLabel |
| Records a label usage site for validation. More... | |
| struct | mxvm::OpSpec |
| Specification of valid operand patterns for an instruction. More... | |
| class | mxvm::Validator |
| Validates MXVM source for correct variable/label usage and instruction operands. More... | |
| struct | mxvm::Validator::VarNamePair |
| A variable name paired with its declaration token. More... | |
Namespaces | |
| namespace | mxvm |
Enumerations | |
| enum class | mxvm::OpKind { mxvm::Num , mxvm::Hex , mxvm::Str , mxvm::Id , mxvm::Member , mxvm::Label , mxvm::Any } |
| Classification of operand kinds for validation. More... | |
| enum class | mxvm::VArity { mxvm::None , mxvm::AnyTail , mxvm::ArgsTail } |
| Variadic arity policy for instruction operand specs. More... | |
Validator for MXVM programs — checks variable/label usage and instruction operand specifications.
Definition in file valid.hpp.