# Package icyllis.arc3d.compiler.lex

package icyllis.arc3d.compiler.lex

- Related Packages
  Package
  Description
  icyllis.arc3d.compiler
  Arc3D Shading Language, based on GLSL 450, inspired by SkSL 300.
  icyllis.arc3d.compiler.analysis
  icyllis.arc3d.compiler.glsl
  icyllis.arc3d.compiler.spirv
  icyllis.arc3d.compiler.tree
  Abstract syntax tree, this package is NOT part of any public API.
- Class
  Description
  DFA
  Tables representing a deterministic finite automaton for matching regular expressions.
  DFAState
  Lexer
  Most are machine generated, see `LexerGenerator`.
  Lexer.PackedEntry
  LexerGenerator
  Generates the `Lexer` class.
  NFA
  A nondeterministic finite automaton for matching regular expressions.
  NFAState
  NFAState.Accept
  Represents an accepting state - if the NFA ends up in this state, we have successfully matched the token indicated by 'mToken'.
  NFAState.Filter
  Matches a character that satisfies a character filter.
  NFAState.Replace
  A state which serves as a placeholder for the states indicated in 'mShadow'.
  NFAtoDFA
  Converts a nondeterministic finite automaton to a deterministic finite automaton.
  RegexNode
  Represents a node in the parse tree of a regular expression.
  RegexNode.Char
  RegexNode.CharClass
  RegexNode.Range
  RegexParser
  Turns a simple regular expression into a parse tree.
  Token
  Represents a lexer token that encapsulates the token kind and position.