cairo-lang-parser 2.18.0

Cairo parser.
Documentation
//! > Test consecutive skipped tokens diagnostic.

//! > test_runner_name
get_diagnostics

//! > cairo_code
skipped tokens

//! > expected_diagnostics
error[E1000]: Skipped tokens. Expected: Const/Enum/ExternFunction/ExternType/Function/Impl/InlineMacro/Module/Struct/Trait/TypeAlias/Use or an attribute.
 --> dummy_file.cairo:1:8
skipped tokens
       ^

error[E1000]: Skipped tokens. Expected: Const/Enum/ExternFunction/ExternType/Function/Impl/InlineMacro/Module/Struct/Trait/TypeAlias/Use or an attribute.
 --> dummy_file.cairo:1:15
skipped tokens
              ^

//! > ==========================================================================

//! > Test consecutive skipped tokens diagnostic surrounded by good tokens.

//! > test_runner_name
get_diagnostics

//! > cairo_code
fn foo() {}
skipped tokens
fn bar() {}

//! > expected_diagnostics
error[E1000]: Skipped tokens. Expected: Const/Enum/ExternFunction/ExternType/Function/Impl/InlineMacro/Module/Struct/Trait/TypeAlias/Use or an attribute.
 --> dummy_file.cairo:2:8
skipped tokens
       ^

error[E1000]: Skipped tokens. Expected: Const/Enum/ExternFunction/ExternType/Function/Impl/InlineMacro/Module/Struct/Trait/TypeAlias/Use or an attribute.
 --> dummy_file.cairo:2:15
skipped tokens
              ^

//! > ==========================================================================

//! > Test consecutive skipped tokens diagnostic with multiple trivia between them.

//! > test_runner_name
get_diagnostics

//! > cairo_code
skipped   tokens

//! > expected_diagnostics
error[E1000]: Skipped tokens. Expected: Const/Enum/ExternFunction/ExternType/Function/Impl/InlineMacro/Module/Struct/Trait/TypeAlias/Use or an attribute.
 --> dummy_file.cairo:1:8
skipped   tokens
       ^

error[E1000]: Skipped tokens. Expected: Const/Enum/ExternFunction/ExternType/Function/Impl/InlineMacro/Module/Struct/Trait/TypeAlias/Use or an attribute.
 --> dummy_file.cairo:1:17
skipped   tokens
                ^

//! > ==========================================================================

//! > Test consecutive skipped tokens diagnostic with trailing and leading trivia between them.

//! > test_runner_name
get_diagnostics

//! > cairo_code
skipped  \\ Comment

  tokens

//! > expected_diagnostics
error[E1000]: Skipped tokens. Expected: Const/Enum/ExternFunction/ExternType/Function/Impl/InlineMacro/Module/Struct/Trait/TypeAlias/Use or an attribute.
 --> dummy_file.cairo:1:8
skipped  \\ Comment
       ^^^^

error[E1000]: Skipped tokens. Expected: Const/Enum/ExternFunction/ExternType/Function/Impl/InlineMacro/Module/Struct/Trait/TypeAlias/Use or an attribute.
 --> dummy_file.cairo:1:20
skipped  \\ Comment
                   ^

error[E1000]: Skipped tokens. Expected: Const/Enum/ExternFunction/ExternType/Function/Impl/InlineMacro/Module/Struct/Trait/TypeAlias/Use or an attribute.
 --> dummy_file.cairo:3:9
  tokens
        ^

//! > ==========================================================================

//! > Test consecutive skipped tokens diagnostic with trailing and leading trivia between them and good tokens after them.

//! > test_runner_name
get_diagnostics

//! > cairo_code
skipped  \\ Comment

  tokens  fn foo() {}

//! > expected_diagnostics
error[E1000]: Skipped tokens. Expected: Const/Enum/ExternFunction/ExternType/Function/Impl/InlineMacro/Module/Struct/Trait/TypeAlias/Use or an attribute.
 --> dummy_file.cairo:1:8
skipped  \\ Comment
       ^^^^

error[E1000]: Skipped tokens. Expected: Const/Enum/ExternFunction/ExternType/Function/Impl/InlineMacro/Module/Struct/Trait/TypeAlias/Use or an attribute.
 --> dummy_file.cairo:1:20
skipped  \\ Comment
                   ^

error[E1000]: Skipped tokens. Expected: Const/Enum/ExternFunction/ExternType/Function/Impl/InlineMacro/Module/Struct/Trait/TypeAlias/Use or an attribute.
 --> dummy_file.cairo:3:9
  tokens  fn foo() {}
        ^