cairo-lang-parser 2.9.3

Cairo parser.
Documentation
//! > Test typed path without ::

//! > test_runner_name
test_partial_parser_tree_with_trivia(expect_diagnostics: false)

//! > cairo_code
fn foo(a: Option<felt252>) {}

//! > top_level_kind
FunctionSignature

//! > ignored_kinds

//! > expected_diagnostics

//! > expected_tree
└── Top level kind: FunctionSignature
    ├── lparen (kind: TerminalLParen)
    │   ├── leading_trivia (kind: Trivia) []
    │   ├── token (kind: TokenLParen): '('
    │   └── trailing_trivia (kind: Trivia) []
    ├── parameters (kind: ParamList)
    │   └── item #0 (kind: Param)
    │       ├── modifiers (kind: ModifierList) []
    │       ├── name (kind: TerminalIdentifier)
    │       │   ├── leading_trivia (kind: Trivia) []
    │       │   ├── token (kind: TokenIdentifier): 'a'
    │       │   └── trailing_trivia (kind: Trivia) []
    │       └── type_clause (kind: TypeClause)
    │           ├── colon (kind: TerminalColon)
    │           │   ├── leading_trivia (kind: Trivia) []
    │           │   ├── token (kind: TokenColon): ':'
    │           │   └── trailing_trivia (kind: Trivia)
    │           │       └── child #0 (kind: TokenWhitespace).
    │           └── ty (kind: ExprPath)
    │               └── item #0 (kind: PathSegmentWithGenericArgs)
    │                   ├── ident (kind: TerminalIdentifier)
    │                   │   ├── leading_trivia (kind: Trivia) []
    │                   │   ├── token (kind: TokenIdentifier): 'Option'
    │                   │   └── trailing_trivia (kind: Trivia) []
    │                   ├── separator (kind: OptionTerminalColonColonEmpty) []
    │                   └── generic_args (kind: GenericArgs)
    │                       ├── langle (kind: TerminalLT)
    │                       │   ├── leading_trivia (kind: Trivia) []
    │                       │   ├── token (kind: TokenLT): '<'
    │                       │   └── trailing_trivia (kind: Trivia) []
    │                       ├── generic_args (kind: GenericArgList)
    │                       │   └── item #0 (kind: GenericArgUnnamed)
    │                       │       └── value (kind: GenericArgValueExpr)
    │                       │           └── expr (kind: ExprPath)
    │                       │               └── item #0 (kind: PathSegmentSimple)
    │                       │                   └── ident (kind: TerminalIdentifier)
    │                       │                       ├── leading_trivia (kind: Trivia) []
    │                       │                       ├── token (kind: TokenIdentifier): 'felt252'
    │                       │                       └── trailing_trivia (kind: Trivia) []
    │                       └── rangle (kind: TerminalGT)
    │                           ├── leading_trivia (kind: Trivia) []
    │                           ├── token (kind: TokenGT): '>'
    │                           └── trailing_trivia (kind: Trivia) []
    ├── rparen (kind: TerminalRParen)
    │   ├── leading_trivia (kind: Trivia) []
    │   ├── token (kind: TokenRParen): ')'
    │   └── trailing_trivia (kind: Trivia)
    │       └── child #0 (kind: TokenWhitespace).
    ├── ret_ty (kind: OptionReturnTypeClauseEmpty) []
    ├── implicits_clause (kind: OptionImplicitsClauseEmpty) []
    └── optional_no_panic (kind: OptionTerminalNoPanicEmpty) []