Module syzlang_parser::parser

source ·
Expand description

Parse tokens into valid objects

Structs§

  • Incoming or outgoing named argument
  • A named constant tied to one or more architectures
  • Wrapper around a vector of Const with some helper functions.
  • A define statement which can be sent to a C preprocessor
  • One flag which specifies one of several possible values
  • Information about a function
  • Identifier for any named entity
  • An Include statement, both file and directory
  • Final output object after parsing all files.
  • Information about a resource
  • Information about defined struct
  • Complex types are often given aliases. This struct contains what the real type is (already procecced).
  • TypeRaw is more complex than TypeAlias because it can declare arbitrary new input, as opposed to just type options.
  • Information about defined union

Enums§

  • All the different architectures supported.
  • Information about what a custom named entity refers to
  • All the different options we can specify on an argument type
  • All the different basic types supported in Syzlang
  • Different types than a type template might create.
  • Whether the argument is input, output or both (from perspective of caller)
  • Optional arguments to a field in a struct or union.
  • All the different statements we define for Identifier
  • All the operating systems supported
  • All the different type of statements
  • Attributes to struct or union
  • Arbitrary value for some option