5231 lines
96 KiB
YAML
5231 lines
96 KiB
YAML
- name: Empty_Statement
|
|
code: ''
|
|
tokens: []
|
|
- name: Integer Default Decimal 0
|
|
code: '0'
|
|
tokens:
|
|
- type: i64
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 0
|
|
stack_final:
|
|
- type: i64
|
|
value: 0
|
|
- name: Integer Default Decimal -1
|
|
code: '-1'
|
|
tokens:
|
|
- type: i64
|
|
value: -1
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: -1
|
|
stack_final:
|
|
- type: i64
|
|
value: -1
|
|
- name: Integer Default Decimal 42
|
|
code: '42'
|
|
tokens:
|
|
- type: i64
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 42
|
|
stack_final:
|
|
- type: i64
|
|
value: 42
|
|
- name: Integer Default Decimal Leading Zeros
|
|
code: '00042'
|
|
tokens:
|
|
- type: i64
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 42
|
|
stack_final:
|
|
- type: i64
|
|
value: 42
|
|
- name: Integer Default Hex 0xFF
|
|
code: '0xFF'
|
|
tokens:
|
|
- type: i64
|
|
value: 255
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 255
|
|
stack_final:
|
|
- type: i64
|
|
value: 255
|
|
- name: Integer Default Hex 0xdeadbeef
|
|
code: '0xdeadbeef'
|
|
tokens:
|
|
- type: i64
|
|
value: 3735928559
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 3735928559
|
|
stack_final:
|
|
- type: i64
|
|
value: 3735928559
|
|
- name: Integer Default Hex Max
|
|
code: '0x7FFFFFFFFFFFFFFF'
|
|
tokens:
|
|
- type: i64
|
|
value: 9223372036854775807
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 9223372036854775807
|
|
stack_final:
|
|
- type: i64
|
|
value: 9223372036854775807
|
|
- name: Integer Default Binary 0b1010
|
|
code: '0b1010'
|
|
tokens:
|
|
- type: i64
|
|
value: 10
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 10
|
|
stack_final:
|
|
- type: i64
|
|
value: 10
|
|
- name: Integer Default Binary All Ones
|
|
code: '0b1111111111111111'
|
|
tokens:
|
|
- type: i64
|
|
value: 65535
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 65535
|
|
stack_final:
|
|
- type: i64
|
|
value: 65535
|
|
- name: Integer Default Octal 0o755
|
|
code: 0o755
|
|
tokens:
|
|
- type: i64
|
|
value: 493
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 493
|
|
stack_final:
|
|
- type: i64
|
|
value: 493
|
|
- name: Integer Default Octal Max Three Digits
|
|
code: 0o777
|
|
tokens:
|
|
- type: i64
|
|
value: 511
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 511
|
|
stack_final:
|
|
- type: i64
|
|
value: 511
|
|
- name: Integer Default Decimal Max i64
|
|
code: '9223372036854775807'
|
|
tokens:
|
|
- type: i64
|
|
value: 9223372036854775807
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 9223372036854775807
|
|
stack_final:
|
|
- type: i64
|
|
value: 9223372036854775807
|
|
- name: Integer Default Decimal Min i64
|
|
code: '-9223372036854775808'
|
|
tokens:
|
|
- type: i64
|
|
value: INT64_MIN
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: INT64_MIN
|
|
stack_final:
|
|
- type: i64
|
|
value: INT64_MIN
|
|
- name: Integer Default Decimal with Underscore
|
|
code: '1_000_000'
|
|
tokens:
|
|
- type: i64
|
|
value: 1000000
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 1000000
|
|
stack_final:
|
|
- type: i64
|
|
value: 1000000
|
|
- name: Integer Default Underscore End
|
|
code: '42_'
|
|
tokens:
|
|
- type: i64
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 42
|
|
stack_final:
|
|
- type: i64
|
|
value: 42
|
|
- name: Integer Default Underscore Double
|
|
code: '4__2'
|
|
tokens:
|
|
- type: i64
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 42
|
|
stack_final:
|
|
- type: i64
|
|
value: 42
|
|
- name: Integer Default Whitespace
|
|
code: ' 42 '
|
|
tokens:
|
|
- type: i64
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 42
|
|
stack_final:
|
|
- type: i64
|
|
value: 42
|
|
- name: Integer Default Hex Zero
|
|
code: '0x0'
|
|
tokens:
|
|
- type: i64
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 0
|
|
stack_final:
|
|
- type: i64
|
|
value: 0
|
|
- name: Integer Default Binary Zero
|
|
code: '0b0'
|
|
tokens:
|
|
- type: i64
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 0
|
|
stack_final:
|
|
- type: i64
|
|
value: 0
|
|
- name: Integer Default Octal Zero
|
|
code: 0o0
|
|
tokens:
|
|
- type: i64
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 0
|
|
stack_final:
|
|
- type: i64
|
|
value: 0
|
|
- name: Integer Default Decimal with Commas Invalid
|
|
code: 1,000,000
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid decimal literal: unexpected '','' in decimal integer.'
|
|
- name: Integer Default Invalid Characters
|
|
code: 12a3
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid decimal literal: unexpected ''a'' in decimal integer.'
|
|
- name: Integer Default Invalid Prefix
|
|
code: 0b2
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid binary literal: unexpected ''2'' in binary integer.'
|
|
- name: Integer i8 Decimal Positive
|
|
code: 42:i8
|
|
tokens:
|
|
- type: i8
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: i8
|
|
value: 42
|
|
stack_final:
|
|
- type: i8
|
|
value: 42
|
|
- name: Integer i8 Zero
|
|
code: 0:i8
|
|
tokens:
|
|
- type: i8
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: i8
|
|
value: 0
|
|
stack_final:
|
|
- type: i8
|
|
value: 0
|
|
- name: Integer i8 Decimal Negative
|
|
code: -100:i8
|
|
tokens:
|
|
- type: i8
|
|
value: -100
|
|
operations:
|
|
- function: push
|
|
type: i8
|
|
value: -100
|
|
stack_final:
|
|
- type: i8
|
|
value: -100
|
|
- name: Integer i8 Hex
|
|
code: 0x7F:i8
|
|
tokens:
|
|
- type: i8
|
|
value: 127
|
|
operations:
|
|
- function: push
|
|
type: i8
|
|
value: 127
|
|
stack_final:
|
|
- type: i8
|
|
value: 127
|
|
- name: Integer i8 Binary
|
|
code: 0b1111:i8
|
|
tokens:
|
|
- type: i8
|
|
value: 15
|
|
operations:
|
|
- function: push
|
|
type: i8
|
|
value: 15
|
|
stack_final:
|
|
- type: i8
|
|
value: 15
|
|
- name: Integer i8 Octal
|
|
code: 0o77:i8
|
|
tokens:
|
|
- type: i8
|
|
value: 63
|
|
operations:
|
|
- function: push
|
|
type: i8
|
|
value: 63
|
|
stack_final:
|
|
- type: i8
|
|
value: 63
|
|
- name: Integer i8 Max Value
|
|
code: 127:i8
|
|
tokens:
|
|
- type: i8
|
|
value: 127
|
|
operations:
|
|
- function: push
|
|
type: i8
|
|
value: 127
|
|
stack_final:
|
|
- type: i8
|
|
value: 127
|
|
- name: Integer i8 Min Value
|
|
code: -128:i8
|
|
tokens:
|
|
- type: i8
|
|
value: -128
|
|
operations:
|
|
- function: push
|
|
type: i8
|
|
value: -128
|
|
stack_final:
|
|
- type: i8
|
|
value: -128
|
|
- name: Integer i8 Overflow
|
|
code: 128:i8
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for i8.'
|
|
- name: Integer i8 Underflow
|
|
code: -129:i8
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for i8.'
|
|
- name: Integer i8 Hex Max
|
|
code: 0x7F:i8
|
|
tokens:
|
|
- type: i8
|
|
value: 127
|
|
operations:
|
|
- function: push
|
|
type: i8
|
|
value: 127
|
|
stack_final:
|
|
- type: i8
|
|
value: 127
|
|
- name: Integer i8 Binary Max
|
|
code: 0b01111111:i8
|
|
tokens:
|
|
- type: i8
|
|
value: 127
|
|
operations:
|
|
- function: push
|
|
type: i8
|
|
value: 127
|
|
stack_final:
|
|
- type: i8
|
|
value: 127
|
|
- name: Integer i8 Octal Max
|
|
code: 0o177:i8
|
|
tokens:
|
|
- type: i8
|
|
value: 127
|
|
operations:
|
|
- function: push
|
|
type: i8
|
|
value: 127
|
|
stack_final:
|
|
- type: i8
|
|
value: 127
|
|
- name: Integer i8 Negative Hex
|
|
code: -0x80:i8
|
|
tokens:
|
|
- type: i8
|
|
value: -128
|
|
operations:
|
|
- function: push
|
|
type: i8
|
|
value: -128
|
|
stack_final:
|
|
- type: i8
|
|
value: -128
|
|
- name: Integer i16 Decimal Positive
|
|
code: 42:i16
|
|
tokens:
|
|
- type: i16
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: i16
|
|
value: 42
|
|
stack_final:
|
|
- type: i16
|
|
value: 42
|
|
- name: Integer i16 Zero
|
|
code: 0:i16
|
|
tokens:
|
|
- type: i16
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: i16
|
|
value: 0
|
|
stack_final:
|
|
- type: i16
|
|
value: 0
|
|
- name: Integer i16 Decimal Negative
|
|
code: -100:i16
|
|
tokens:
|
|
- type: i16
|
|
value: -100
|
|
operations:
|
|
- function: push
|
|
type: i16
|
|
value: -100
|
|
stack_final:
|
|
- type: i16
|
|
value: -100
|
|
- name: Integer i16 Hex
|
|
code: 0xFF:i16
|
|
tokens:
|
|
- type: i16
|
|
value: 255
|
|
operations:
|
|
- function: push
|
|
type: i16
|
|
value: 255
|
|
stack_final:
|
|
- type: i16
|
|
value: 255
|
|
- name: Integer i16 Binary
|
|
code: 0b1111:i16
|
|
tokens:
|
|
- type: i16
|
|
value: 15
|
|
operations:
|
|
- function: push
|
|
type: i16
|
|
value: 15
|
|
stack_final:
|
|
- type: i16
|
|
value: 15
|
|
- name: Integer i16 Octal
|
|
code: 0o77:i16
|
|
tokens:
|
|
- type: i16
|
|
value: 63
|
|
operations:
|
|
- function: push
|
|
type: i16
|
|
value: 63
|
|
stack_final:
|
|
- type: i16
|
|
value: 63
|
|
- name: Integer i16 Max Value
|
|
code: 32767:i16
|
|
tokens:
|
|
- type: i16
|
|
value: 32767
|
|
operations:
|
|
- function: push
|
|
type: i16
|
|
value: 32767
|
|
stack_final:
|
|
- type: i16
|
|
value: 32767
|
|
- name: Integer i16 Min Value
|
|
code: -32768:i16
|
|
tokens:
|
|
- type: i16
|
|
value: -32768
|
|
operations:
|
|
- function: push
|
|
type: i16
|
|
value: -32768
|
|
stack_final:
|
|
- type: i16
|
|
value: -32768
|
|
- name: Integer i16 Overflow
|
|
code: 32768:i16
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for i16.'
|
|
- name: Integer i16 Underflow
|
|
code: -32769:i16
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for i16.'
|
|
- name: Integer i16 Hex Sample
|
|
code: 0x1234:i16
|
|
tokens:
|
|
- type: i16
|
|
value: 4660
|
|
operations:
|
|
- function: push
|
|
type: i16
|
|
value: 4660
|
|
stack_final:
|
|
- type: i16
|
|
value: 4660
|
|
- name: Integer i16 Binary Sample
|
|
code: 0b1111111100000000:i16
|
|
tokens:
|
|
- type: i16
|
|
value: 65280
|
|
operations:
|
|
- function: push
|
|
type: i16
|
|
value: 65280
|
|
stack_final:
|
|
- type: i16
|
|
value: 65280
|
|
- name: Integer i16 Octal Sample
|
|
code: 0o1234:i16
|
|
tokens:
|
|
- type: i16
|
|
value: 668
|
|
operations:
|
|
- function: push
|
|
type: i16
|
|
value: 668
|
|
stack_final:
|
|
- type: i16
|
|
value: 668
|
|
- name: Integer i32 Decimal Positive
|
|
code: 42:i32
|
|
tokens:
|
|
- type: i32
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: i32
|
|
value: 42
|
|
stack_final:
|
|
- type: i32
|
|
value: 42
|
|
- name: Integer i32 Zero
|
|
code: 0:i32
|
|
tokens:
|
|
- type: i32
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: i32
|
|
value: 0
|
|
stack_final:
|
|
- type: i32
|
|
value: 0
|
|
- name: Integer i32 Decimal Negative
|
|
code: -100:i32
|
|
tokens:
|
|
- type: i32
|
|
value: -100
|
|
operations:
|
|
- function: push
|
|
type: i32
|
|
value: -100
|
|
stack_final:
|
|
- type: i32
|
|
value: -100
|
|
- name: Integer i32 Hex
|
|
code: 0xFF:i32
|
|
tokens:
|
|
- type: i32
|
|
value: 255
|
|
operations:
|
|
- function: push
|
|
type: i32
|
|
value: 255
|
|
stack_final:
|
|
- type: i32
|
|
value: 255
|
|
- name: Integer i32 Binary
|
|
code: 0b1111:i32
|
|
tokens:
|
|
- type: i32
|
|
value: 15
|
|
operations:
|
|
- function: push
|
|
type: i32
|
|
value: 15
|
|
stack_final:
|
|
- type: i32
|
|
value: 15
|
|
- name: Integer i32 Octal
|
|
code: 0o77:i32
|
|
tokens:
|
|
- type: i32
|
|
value: 63
|
|
operations:
|
|
- function: push
|
|
type: i32
|
|
value: 63
|
|
stack_final:
|
|
- type: i32
|
|
value: 63
|
|
- name: Integer i32 Max Value
|
|
code: 2147483647:i32
|
|
tokens:
|
|
- type: i32
|
|
value: 2147483647
|
|
operations:
|
|
- function: push
|
|
type: i32
|
|
value: 2147483647
|
|
stack_final:
|
|
- type: i32
|
|
value: 2147483647
|
|
- name: Integer i32 Min Value
|
|
code: -2147483648:i32
|
|
tokens:
|
|
- type: i32
|
|
value: -2147483648
|
|
operations:
|
|
- function: push
|
|
type: i32
|
|
value: -2147483648
|
|
stack_final:
|
|
- type: i32
|
|
value: -2147483648
|
|
- name: Integer i32 Overflow
|
|
code: 2147483648:i32
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for i32.'
|
|
- name: Integer i32 Underflow
|
|
code: -2147483649:i32
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for i32.'
|
|
- name: Integer i32 With Underscores
|
|
code: 1_000_000:i32
|
|
tokens:
|
|
- type: i32
|
|
value: 1000000
|
|
operations:
|
|
- function: push
|
|
type: i32
|
|
value: 1000000
|
|
stack_final:
|
|
- type: i32
|
|
value: 1000000
|
|
- name: Integer i32 Hex Sample
|
|
code: 0xABCD:i32
|
|
tokens:
|
|
- type: i32
|
|
value: 43981
|
|
operations:
|
|
- function: push
|
|
type: i32
|
|
value: 43981
|
|
stack_final:
|
|
- type: i32
|
|
value: 43981
|
|
- name: Integer i32 Binary Sample
|
|
code: 0b11110000:i32
|
|
tokens:
|
|
- type: i32
|
|
value: 240
|
|
operations:
|
|
- function: push
|
|
type: i32
|
|
value: 240
|
|
stack_final:
|
|
- type: i32
|
|
value: 240
|
|
- name: Integer i64 Decimal Positive
|
|
code: 42:i64
|
|
tokens:
|
|
- type: i64
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 42
|
|
stack_final:
|
|
- type: i64
|
|
value: 42
|
|
- name: Integer i64 Zero
|
|
code: 0:i64
|
|
tokens:
|
|
- type: i64
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 0
|
|
stack_final:
|
|
- type: i64
|
|
value: 0
|
|
- name: Integer i64 Decimal Negative
|
|
code: -100:i64
|
|
tokens:
|
|
- type: i64
|
|
value: -100
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: -100
|
|
stack_final:
|
|
- type: i64
|
|
value: -100
|
|
- name: Integer i64 Hex
|
|
code: 0xFF:i64
|
|
tokens:
|
|
- type: i64
|
|
value: 255
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 255
|
|
stack_final:
|
|
- type: i64
|
|
value: 255
|
|
- name: Integer i64 Binary
|
|
code: 0b1111:i64
|
|
tokens:
|
|
- type: i64
|
|
value: 15
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 15
|
|
stack_final:
|
|
- type: i64
|
|
value: 15
|
|
- name: Integer i64 Octal
|
|
code: 0o77:i64
|
|
tokens:
|
|
- type: i64
|
|
value: 63
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 63
|
|
stack_final:
|
|
- type: i64
|
|
value: 63
|
|
- name: Integer i64 Max Value
|
|
code: 9223372036854775807:i64
|
|
tokens:
|
|
- type: i64
|
|
value: 9223372036854775807
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 9223372036854775807
|
|
stack_final:
|
|
- type: i64
|
|
value: 9223372036854775807
|
|
- name: Integer i64 Min Value
|
|
code: -9223372036854775808:i64
|
|
tokens:
|
|
- type: i64
|
|
value: INT64_MIN
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: INT64_MIN
|
|
stack_final:
|
|
- type: i64
|
|
value: INT64_MIN
|
|
- name: Integer i64 Overflow
|
|
code: 9223372036854775808:i64
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for i64.'
|
|
- name: Integer i64 Underflow
|
|
code: -9223372036854775809:i64
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for i64.'
|
|
- name: Integer i64 With Underscores
|
|
code: 1_000_000:i64
|
|
tokens:
|
|
- type: i64
|
|
value: 1000000
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 1000000
|
|
stack_final:
|
|
- type: i64
|
|
value: 1000000
|
|
- name: Integer i64 Decimal Positive 42
|
|
code: 42:i64
|
|
tokens:
|
|
- type: i64
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 42
|
|
stack_final:
|
|
- type: i64
|
|
value: 42
|
|
- name: Integer i64 Hex 0xFF
|
|
code: 0xFF:i64
|
|
tokens:
|
|
- type: i64
|
|
value: 255
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 255
|
|
stack_final:
|
|
- type: i64
|
|
value: 255
|
|
- name: Integer i64 Binary 0b1010
|
|
code: 0b1010:i64
|
|
tokens:
|
|
- type: i64
|
|
value: 10
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 10
|
|
stack_final:
|
|
- type: i64
|
|
value: 10
|
|
- name: Integer i64 Octal 0o755
|
|
code: 0o755:i64
|
|
tokens:
|
|
- type: i64
|
|
value: 493
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 493
|
|
stack_final:
|
|
- type: i64
|
|
value: 493
|
|
- name: Integer u8 Decimal Positive
|
|
code: 42:u8
|
|
tokens:
|
|
- type: u8
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: u8
|
|
value: 42
|
|
stack_final:
|
|
- type: u8
|
|
value: 42
|
|
- name: Integer u8 Zero
|
|
code: 0:u8
|
|
tokens:
|
|
- type: u8
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: u8
|
|
value: 0
|
|
stack_final:
|
|
- type: u8
|
|
value: 0
|
|
- name: Integer u8 Hex
|
|
code: 0xFF:u8
|
|
tokens:
|
|
- type: u8
|
|
value: 255
|
|
operations:
|
|
- function: push
|
|
type: u8
|
|
value: 255
|
|
stack_final:
|
|
- type: u8
|
|
value: 255
|
|
- name: Integer u8 Binary
|
|
code: 0b1111:u8
|
|
tokens:
|
|
- type: u8
|
|
value: 15
|
|
operations:
|
|
- function: push
|
|
type: u8
|
|
value: 15
|
|
stack_final:
|
|
- type: u8
|
|
value: 15
|
|
- name: Integer u8 Octal
|
|
code: 0o77:u8
|
|
tokens:
|
|
- type: u8
|
|
value: 63
|
|
operations:
|
|
- function: push
|
|
type: u8
|
|
value: 63
|
|
stack_final:
|
|
- type: u8
|
|
value: 63
|
|
- name: Integer u8 Max Value
|
|
code: 255:u8
|
|
tokens:
|
|
- type: u8
|
|
value: 255
|
|
operations:
|
|
- function: push
|
|
type: u8
|
|
value: 255
|
|
stack_final:
|
|
- type: u8
|
|
value: 255
|
|
- name: Integer u8 Min Value
|
|
code: 0:u8
|
|
tokens:
|
|
- type: u8
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: u8
|
|
value: 0
|
|
stack_final:
|
|
- type: u8
|
|
value: 0
|
|
- name: Integer u8 Overflow
|
|
code: 256:u8
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for u8.'
|
|
- name: Integer u8 Underflow
|
|
code: -1:u8
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for u8.'
|
|
- name: Integer u8 Hex Max
|
|
code: 0xFF:u8
|
|
tokens:
|
|
- type: u8
|
|
value: 255
|
|
operations:
|
|
- function: push
|
|
type: u8
|
|
value: 255
|
|
stack_final:
|
|
- type: u8
|
|
value: 255
|
|
- name: Integer u8 Binary Max
|
|
code: 0b11111111:u8
|
|
tokens:
|
|
- type: u8
|
|
value: 255
|
|
operations:
|
|
- function: push
|
|
type: u8
|
|
value: 255
|
|
stack_final:
|
|
- type: u8
|
|
value: 255
|
|
- name: Integer u8 Octal Max
|
|
code: 0o377:u8
|
|
tokens:
|
|
- type: u8
|
|
value: 255
|
|
operations:
|
|
- function: push
|
|
type: u8
|
|
value: 255
|
|
stack_final:
|
|
- type: u8
|
|
value: 255
|
|
- name: Integer u16 Decimal Positive
|
|
code: 42:u16
|
|
tokens:
|
|
- type: u16
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: u16
|
|
value: 42
|
|
stack_final:
|
|
- type: u16
|
|
value: 42
|
|
- name: Integer u16 Zero
|
|
code: 0:u16
|
|
tokens:
|
|
- type: u16
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: u16
|
|
value: 0
|
|
stack_final:
|
|
- type: u16
|
|
value: 0
|
|
- name: Integer u16 Hex
|
|
code: 0xFF:u16
|
|
tokens:
|
|
- type: u16
|
|
value: 255
|
|
operations:
|
|
- function: push
|
|
type: u16
|
|
value: 255
|
|
stack_final:
|
|
- type: u16
|
|
value: 255
|
|
- name: Integer u16 Binary
|
|
code: 0b1111:u16
|
|
tokens:
|
|
- type: u16
|
|
value: 15
|
|
operations:
|
|
- function: push
|
|
type: u16
|
|
value: 15
|
|
stack_final:
|
|
- type: u16
|
|
value: 15
|
|
- name: Integer u16 Octal
|
|
code: 0o77:u16
|
|
tokens:
|
|
- type: u16
|
|
value: 63
|
|
operations:
|
|
- function: push
|
|
type: u16
|
|
value: 63
|
|
stack_final:
|
|
- type: u16
|
|
value: 63
|
|
- name: Integer u16 Max Value
|
|
code: 65535:u16
|
|
tokens:
|
|
- type: u16
|
|
value: 65535
|
|
operations:
|
|
- function: push
|
|
type: u16
|
|
value: 65535
|
|
stack_final:
|
|
- type: u16
|
|
value: 65535
|
|
- name: Integer u16 Min Value
|
|
code: 0:u16
|
|
tokens:
|
|
- type: u16
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: u16
|
|
value: 0
|
|
stack_final:
|
|
- type: u16
|
|
value: 0
|
|
- name: Integer u16 Overflow
|
|
code: 65536:u16
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for u16.'
|
|
- name: Integer u16 Underflow
|
|
code: -1:u16
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for u16.'
|
|
- name: Integer u16 Hex Max
|
|
code: 0xFFFF:u16
|
|
tokens:
|
|
- type: u16
|
|
value: 65535
|
|
operations:
|
|
- function: push
|
|
type: u16
|
|
value: 65535
|
|
stack_final:
|
|
- type: u16
|
|
value: 65535
|
|
- name: Integer u16 Binary Max
|
|
code: 0b1111111111111111:u16
|
|
tokens:
|
|
- type: u16
|
|
value: 65535
|
|
operations:
|
|
- function: push
|
|
type: u16
|
|
value: 65535
|
|
stack_final:
|
|
- type: u16
|
|
value: 65535
|
|
- name: Integer u16 Octal Max
|
|
code: 0o177777:u16
|
|
tokens:
|
|
- type: u16
|
|
value: 65535
|
|
operations:
|
|
- function: push
|
|
type: u16
|
|
value: 65535
|
|
stack_final:
|
|
- type: u16
|
|
value: 65535
|
|
- name: Integer u16 Decimal Mid
|
|
code: 50000:u16
|
|
tokens:
|
|
- type: u16
|
|
value: 50000
|
|
operations:
|
|
- function: push
|
|
type: u16
|
|
value: 50000
|
|
stack_final:
|
|
- type: u16
|
|
value: 50000
|
|
- name: Integer u32 Decimal Positive
|
|
code: 42:u32
|
|
tokens:
|
|
- type: u32
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: u32
|
|
value: 42
|
|
stack_final:
|
|
- type: u32
|
|
value: 42
|
|
- name: Integer u32 Zero
|
|
code: 0:u32
|
|
tokens:
|
|
- type: u32
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: u32
|
|
value: 0
|
|
stack_final:
|
|
- type: u32
|
|
value: 0
|
|
- name: Integer u32 Hex
|
|
code: 0xFF:u32
|
|
tokens:
|
|
- type: u32
|
|
value: 255
|
|
operations:
|
|
- function: push
|
|
type: u32
|
|
value: 255
|
|
stack_final:
|
|
- type: u32
|
|
value: 255
|
|
- name: Integer u32 Binary
|
|
code: 0b1111:u32
|
|
tokens:
|
|
- type: u32
|
|
value: 15
|
|
operations:
|
|
- function: push
|
|
type: u32
|
|
value: 15
|
|
stack_final:
|
|
- type: u32
|
|
value: 15
|
|
- name: Integer u32 Octal
|
|
code: 0o77:u32
|
|
tokens:
|
|
- type: u32
|
|
value: 63
|
|
operations:
|
|
- function: push
|
|
type: u32
|
|
value: 63
|
|
stack_final:
|
|
- type: u32
|
|
value: 63
|
|
- name: Integer u32 Max Value
|
|
code: 4294967295:u32
|
|
tokens:
|
|
- type: u32
|
|
value: 4294967295
|
|
operations:
|
|
- function: push
|
|
type: u32
|
|
value: 4294967295
|
|
stack_final:
|
|
- type: u32
|
|
value: 4294967295
|
|
- name: Integer u32 Min Value
|
|
code: 0:u32
|
|
tokens:
|
|
- type: u32
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: u32
|
|
value: 0
|
|
stack_final:
|
|
- type: u32
|
|
value: 0
|
|
- name: Integer u32 Overflow
|
|
code: 4294967296:u32
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for u32.'
|
|
- name: Integer u32 Underflow
|
|
code: -1:u32
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for u32.'
|
|
- name: Integer u32 With Underscores
|
|
code: 1_000_000:u32
|
|
tokens:
|
|
- type: u32
|
|
value: 1000000
|
|
operations:
|
|
- function: push
|
|
type: u32
|
|
value: 1000000
|
|
stack_final:
|
|
- type: u32
|
|
value: 1000000
|
|
- name: Integer u32 Hex Max
|
|
code: 0xFFFFFFFF:u32
|
|
tokens:
|
|
- type: u32
|
|
value: 4294967295
|
|
operations:
|
|
- function: push
|
|
type: u32
|
|
value: 4294967295
|
|
stack_final:
|
|
- type: u32
|
|
value: 4294967295
|
|
- name: Integer u32 Binary Sample
|
|
code: 0b11111111000000001111111100000000:u32
|
|
tokens:
|
|
- type: u32
|
|
value: 4278255360
|
|
operations:
|
|
- function: push
|
|
type: u32
|
|
value: 4278255360
|
|
stack_final:
|
|
- type: u32
|
|
value: 4278255360
|
|
- name: Integer u32 Octal Max
|
|
code: 0o37777777777:u32
|
|
tokens:
|
|
- type: u32
|
|
value: 4294967295
|
|
operations:
|
|
- function: push
|
|
type: u32
|
|
value: 4294967295
|
|
stack_final:
|
|
- type: u32
|
|
value: 4294967295
|
|
- name: Integer u32 Decimal Mid
|
|
code: 1000000:u32
|
|
tokens:
|
|
- type: u32
|
|
value: 1000000
|
|
operations:
|
|
- function: push
|
|
type: u32
|
|
value: 1000000
|
|
stack_final:
|
|
- type: u32
|
|
value: 1000000
|
|
- name: Integer u64 Decimal Positive
|
|
code: 42:u64
|
|
tokens:
|
|
- type: u64
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: u64
|
|
value: 42
|
|
stack_final:
|
|
- type: u64
|
|
value: 42
|
|
- name: Integer u64 Zero
|
|
code: 0:u64
|
|
tokens:
|
|
- type: u64
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: u64
|
|
value: 0
|
|
stack_final:
|
|
- type: u64
|
|
value: 0
|
|
- name: Integer u64 Hex
|
|
code: 0xFF:u64
|
|
tokens:
|
|
- type: u64
|
|
value: 255
|
|
operations:
|
|
- function: push
|
|
type: u64
|
|
value: 255
|
|
stack_final:
|
|
- type: u64
|
|
value: 255
|
|
- name: Integer u64 Binary
|
|
code: 0b1111:u64
|
|
tokens:
|
|
- type: u64
|
|
value: 15
|
|
operations:
|
|
- function: push
|
|
type: u64
|
|
value: 15
|
|
stack_final:
|
|
- type: u64
|
|
value: 15
|
|
- name: Integer u64 Octal
|
|
code: 0o77:u64
|
|
tokens:
|
|
- type: u64
|
|
value: 63
|
|
operations:
|
|
- function: push
|
|
type: u64
|
|
value: 63
|
|
stack_final:
|
|
- type: u64
|
|
value: 63
|
|
- name: Integer u64 Max Value
|
|
code: 18446744073709551615:u64
|
|
tokens:
|
|
- type: u64
|
|
value: UINT64_MAX
|
|
operations:
|
|
- function: push
|
|
type: u64
|
|
value: UINT64_MAX
|
|
stack_final:
|
|
- type: u64
|
|
value: UINT64_MAX
|
|
- name: Integer u64 Min Value
|
|
code: 0:u64
|
|
tokens:
|
|
- type: u64
|
|
value: 0
|
|
operations:
|
|
- function: push
|
|
type: u64
|
|
value: 0
|
|
stack_final:
|
|
- type: u64
|
|
value: 0
|
|
- name: Integer u64 Overflow
|
|
code: 18446744073709551616:u64
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for u64.'
|
|
- name: Integer u64 Underflow
|
|
code: -1:u64
|
|
tokens:
|
|
- type: error
|
|
value: 'Integer overflow: value exceeds range for u64.'
|
|
- name: Integer u64 With Underscores
|
|
code: 1_000_000:u64
|
|
tokens:
|
|
- type: u64
|
|
value: 1000000
|
|
operations:
|
|
- function: push
|
|
type: u64
|
|
value: 1000000
|
|
stack_final:
|
|
- type: u64
|
|
value: 1000000
|
|
- name: Integer u64 Hex Max
|
|
code: 0xFFFFFFFFFFFFFFFF:u64
|
|
tokens:
|
|
- type: u64
|
|
value: UINT64_MAX
|
|
operations:
|
|
- function: push
|
|
type: u64
|
|
value: UINT64_MAX
|
|
stack_final:
|
|
- type: u64
|
|
value: UINT64_MAX
|
|
- name: Integer u64 Binary Sample
|
|
code: 0b1010101010101010:u64
|
|
tokens:
|
|
- type: u64
|
|
value: 43690
|
|
operations:
|
|
- function: push
|
|
type: u64
|
|
value: 43690
|
|
stack_final:
|
|
- type: u64
|
|
value: 43690
|
|
- name: Integer u64 Octal Sample
|
|
code: 0o7777:u64
|
|
tokens:
|
|
- type: u64
|
|
value: 4095
|
|
operations:
|
|
- function: push
|
|
type: u64
|
|
value: 4095
|
|
stack_final:
|
|
- type: u64
|
|
value: 4095
|
|
- name: Integer u64 Decimal
|
|
code: 42:u64
|
|
tokens:
|
|
- type: u64
|
|
value: 42
|
|
operations:
|
|
- function: push
|
|
type: u64
|
|
value: 42
|
|
stack_final:
|
|
- type: u64
|
|
value: 42
|
|
- name: Integer Hex With Underscores
|
|
code: 0xDEAD_BEEF:i64
|
|
tokens:
|
|
- type: i64
|
|
value: 3735928559
|
|
operations:
|
|
- function: push
|
|
type: i64
|
|
value: 3735928559
|
|
stack_final:
|
|
- type: i64
|
|
value: 3735928559
|
|
- name: Integer Binary With Underscores
|
|
code: 0b1111_0000_1010_0101:i32
|
|
tokens:
|
|
- type: i32
|
|
value: 61605
|
|
operations:
|
|
- function: push
|
|
type: i32
|
|
value: 61605
|
|
stack_final:
|
|
- type: i32
|
|
value: 61605
|
|
- name: Integer Octal With Underscores
|
|
code: 0o7_7_7:i16
|
|
tokens:
|
|
- type: i16
|
|
value: 511
|
|
operations:
|
|
- function: push
|
|
type: i16
|
|
value: 511
|
|
stack_final:
|
|
- type: i16
|
|
value: 511
|
|
- name: Float Default Simple
|
|
code: '3.14'
|
|
tokens:
|
|
- type: f64
|
|
value: 3.14
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 3.14
|
|
stack_final:
|
|
- type: f64
|
|
value: 3.14
|
|
- name: Float Default Zero
|
|
code: '0.0'
|
|
tokens:
|
|
- type: f64
|
|
value: 0.0
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 0.0
|
|
stack_final:
|
|
- type: f64
|
|
value: 0.0
|
|
- name: Float Default Negative
|
|
code: '-2.5'
|
|
tokens:
|
|
- type: f64
|
|
value: -2.5
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: -2.5
|
|
stack_final:
|
|
- type: f64
|
|
value: -2.5
|
|
- name: Float Default One
|
|
code: '1.0'
|
|
tokens:
|
|
- type: f64
|
|
value: 1.0
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1.0
|
|
stack_final:
|
|
- type: f64
|
|
value: 1.0
|
|
- name: Float f32 Simple
|
|
code: 3.14:f32
|
|
tokens:
|
|
- type: f32
|
|
value: 3.14
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: 3.14
|
|
stack_final:
|
|
- type: f32
|
|
value: 3.14
|
|
- name: Float f64 Simple
|
|
code: 2.718:f64
|
|
tokens:
|
|
- type: f64
|
|
value: 2.718
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 2.718
|
|
stack_final:
|
|
- type: f64
|
|
value: 2.718
|
|
- name: Float Default Leading Zeros
|
|
code: '00042.5'
|
|
tokens:
|
|
- type: f64
|
|
value: 42.5
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 42.5
|
|
stack_final:
|
|
- type: f64
|
|
value: 42.5
|
|
- name: Float Default Leading Zero Decimal
|
|
code: '0.5'
|
|
tokens:
|
|
- type: f64
|
|
value: 0.5
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 0.5
|
|
stack_final:
|
|
- type: f64
|
|
value: 0.5
|
|
- name: Float Default Trailing Zeros
|
|
code: '3.1400'
|
|
tokens:
|
|
- type: f64
|
|
value: 3.14
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 3.14
|
|
stack_final:
|
|
- type: f64
|
|
value: 3.14
|
|
- name: Float Default No Leading Digit
|
|
code: '.5'
|
|
tokens:
|
|
- type: f64
|
|
value: 0.5
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 0.5
|
|
stack_final:
|
|
- type: f64
|
|
value: 0.5
|
|
- name: Float Default No Leading Digit Negative
|
|
code: -.25
|
|
tokens:
|
|
- type: f64
|
|
value: -0.25
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: -0.25
|
|
stack_final:
|
|
- type: f64
|
|
value: -0.25
|
|
- name: Float Default No Trailing Digits
|
|
code: '42.'
|
|
tokens:
|
|
- type: f64
|
|
value: 42.0
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 42.0
|
|
stack_final:
|
|
- type: f64
|
|
value: 42.0
|
|
- name: Float Default No Trailing Digits Negative
|
|
code: '-7.'
|
|
tokens:
|
|
- type: f64
|
|
value: -7.0
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: -7.0
|
|
stack_final:
|
|
- type: f64
|
|
value: -7.0
|
|
- name: Float Default Scientific Positive Exp
|
|
code: 1.5e10
|
|
tokens:
|
|
- type: f64
|
|
value: 15000000000.0
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 15000000000.0
|
|
stack_final:
|
|
- type: f64
|
|
value: 15000000000.0
|
|
- name: Float Default Scientific Negative Exp
|
|
code: '2.5e-5'
|
|
tokens:
|
|
- type: f64
|
|
value: 2.5e-05
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 2.5e-05
|
|
stack_final:
|
|
- type: f64
|
|
value: 2.5e-05
|
|
- name: Float Default Scientific Capital E
|
|
code: 3.14E8
|
|
tokens:
|
|
- type: f64
|
|
value: 314000000.0
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 314000000.0
|
|
stack_final:
|
|
- type: f64
|
|
value: 314000000.0
|
|
- name: Float Default Scientific Plus Sign
|
|
code: '1.0e+3'
|
|
tokens:
|
|
- type: f64
|
|
value: 1000.0
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1000.0
|
|
stack_final:
|
|
- type: f64
|
|
value: 1000.0
|
|
- name: Float Default Very Small
|
|
code: '0.000001'
|
|
tokens:
|
|
- type: f64
|
|
value: 1.0e-06
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1.0e-06
|
|
stack_final:
|
|
- type: f64
|
|
value: 1.0e-06
|
|
- name: Float Default Scientific Very Small
|
|
code: '1.0e-20'
|
|
tokens:
|
|
- type: f64
|
|
value: 1.0e-20
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1.0e-20
|
|
stack_final:
|
|
- type: f64
|
|
value: 1.0e-20
|
|
- name: Float Default Very Large
|
|
code: '1000000.0'
|
|
tokens:
|
|
- type: f64
|
|
value: 1000000.0
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1000000.0
|
|
stack_final:
|
|
- type: f64
|
|
value: 1000000.0
|
|
- name: Float Default Scientific Very Large
|
|
code: 1.0e20
|
|
tokens:
|
|
- type: f64
|
|
value: 1.0e+20
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1.0e+20
|
|
stack_final:
|
|
- type: f64
|
|
value: 1.0e+20
|
|
- name: Float Default Underscore Integer Part
|
|
code: '1_000_000.5'
|
|
tokens:
|
|
- type: f64
|
|
value: 1000000.5
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1000000.5
|
|
stack_final:
|
|
- type: f64
|
|
value: 1000000.5
|
|
- name: Float Default Underscore Decimal Part
|
|
code: '3.141_592_653'
|
|
tokens:
|
|
- type: f64
|
|
value: 3.141592653
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 3.141592653
|
|
stack_final:
|
|
- type: f64
|
|
value: 3.141592653
|
|
- name: Float Default Underscore Both Parts
|
|
code: '1_234.567_89'
|
|
tokens:
|
|
- type: f64
|
|
value: 1234.56789
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1234.56789
|
|
stack_final:
|
|
- type: f64
|
|
value: 1234.56789
|
|
- name: Float Default Underscore Scientific Mantissa
|
|
code: 1_000.5e10
|
|
tokens:
|
|
- type: f64
|
|
value: 10005000000000.0
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 10005000000000.0
|
|
stack_final:
|
|
- type: f64
|
|
value: 10005000000000.0
|
|
- name: Float Default Underscore Scientific Exponent
|
|
code: 1.5e1_0
|
|
tokens:
|
|
- type: f64
|
|
value: 15000000000.0
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 15000000000.0
|
|
stack_final:
|
|
- type: f64
|
|
value: 15000000000.0
|
|
- name: Float Default Underscore Trailing
|
|
code: '42.5_'
|
|
tokens:
|
|
- type: f64
|
|
value: 42.5
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 42.5
|
|
stack_final:
|
|
- type: f64
|
|
value: 42.5
|
|
- name: Float Default Underscore Double
|
|
code: '4__2.5'
|
|
tokens:
|
|
- type: f64
|
|
value: 42.5
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 42.5
|
|
stack_final:
|
|
- type: f64
|
|
value: 42.5
|
|
- name: Float f32 With Underscores
|
|
code: 1_234.567_89:f32
|
|
tokens:
|
|
- type: f32
|
|
value: 1234.56789
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: 1234.56789
|
|
stack_final:
|
|
- type: f32
|
|
value: 1234.56789
|
|
- name: Float f32 Max Value
|
|
code: 3.4028235e+38:f32
|
|
tokens:
|
|
- type: f32
|
|
value: 3.4028235e+38
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: 3.4028235e+38
|
|
stack_final:
|
|
- type: f32
|
|
value: 3.4028235e+38
|
|
- name: Float f32 Min Value
|
|
code: -3.4028235e+38:f32
|
|
tokens:
|
|
- type: f32
|
|
value: -3.4028235e+38
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: -3.4028235e+38
|
|
stack_final:
|
|
- type: f32
|
|
value: -3.4028235e+38
|
|
- name: Float f32 Min Positive
|
|
code: 1.1754944e-38:f32
|
|
tokens:
|
|
- type: f32
|
|
value: 1.1754944e-38
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: 1.1754944e-38
|
|
stack_final:
|
|
- type: f32
|
|
value: 1.1754944e-38
|
|
- name: Float f32 Epsilon
|
|
code: 1.1920929e-07:f32
|
|
tokens:
|
|
- type: f32
|
|
value: 1.1920929e-07
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: 1.1920929e-07
|
|
stack_final:
|
|
- type: f32
|
|
value: 1.1920929e-07
|
|
- name: Float f32 Near Zero Positive
|
|
code: 1e-30:f32
|
|
tokens:
|
|
- type: f32
|
|
value: 1.0e-30
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: 1.0e-30
|
|
stack_final:
|
|
- type: f32
|
|
value: 1.0e-30
|
|
- name: Float f32 Near Zero Negative
|
|
code: -1e-30:f32
|
|
tokens:
|
|
- type: f32
|
|
value: -1.0e-30
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: -1.0e-30
|
|
stack_final:
|
|
- type: f32
|
|
value: -1.0e-30
|
|
- name: Float f32 Subnormal
|
|
code: 1e-40:f32
|
|
tokens:
|
|
- type: f32
|
|
value: 1.0e-40
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: 1.0e-40
|
|
stack_final:
|
|
- type: f32
|
|
value: 1.0e-40
|
|
- name: Float f64 Max Value
|
|
code: 1.7976931348623157e+308:f64
|
|
tokens:
|
|
- type: f64
|
|
value: 1.7976931348623157e+308
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1.7976931348623157e+308
|
|
stack_final:
|
|
- type: f64
|
|
value: 1.7976931348623157e+308
|
|
- name: Float f64 Min Value
|
|
code: -1.7976931348623157e+308:f64
|
|
tokens:
|
|
- type: f64
|
|
value: -1.7976931348623157e+308
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: -1.7976931348623157e+308
|
|
stack_final:
|
|
- type: f64
|
|
value: -1.7976931348623157e+308
|
|
- name: Float f64 Min Positive
|
|
code: 2.2250738585072014e-308:f64
|
|
tokens:
|
|
- type: f64
|
|
value: 2.2250738585072014e-308
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 2.2250738585072014e-308
|
|
stack_final:
|
|
- type: f64
|
|
value: 2.2250738585072014e-308
|
|
- name: Float f64 Epsilon
|
|
code: 2.220446049250313e-16:f64
|
|
tokens:
|
|
- type: f64
|
|
value: 2.220446049250313e-16
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 2.220446049250313e-16
|
|
stack_final:
|
|
- type: f64
|
|
value: 2.220446049250313e-16
|
|
- name: Float f64 Near Zero Positive
|
|
code: 1e-30:f64
|
|
tokens:
|
|
- type: f64
|
|
value: 1.0e-30
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1.0e-30
|
|
stack_final:
|
|
- type: f64
|
|
value: 1.0e-30
|
|
- name: Float f64 Near Zero Negative
|
|
code: -1e-30:f64
|
|
tokens:
|
|
- type: f64
|
|
value: -1.0e-30
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: -1.0e-30
|
|
stack_final:
|
|
- type: f64
|
|
value: -1.0e-30
|
|
- name: Float f64 Subnormal
|
|
code: 1e-320:f64
|
|
tokens:
|
|
- type: f64
|
|
value: 1.0e-320
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1.0e-320
|
|
stack_final:
|
|
- type: f64
|
|
value: 1.0e-320
|
|
- name: Float f32 Overflow Positive
|
|
code: 1e40:f32
|
|
tokens:
|
|
- type: error
|
|
value: 'Float overflow: value exceeds range for f32.'
|
|
- name: Float f32 Overflow Negative
|
|
code: -1e40:f32
|
|
tokens:
|
|
- type: error
|
|
value: 'Float overflow: value exceeds range for f32.'
|
|
- name: Float f64 Overflow Positive
|
|
code: 1e310:f64
|
|
tokens:
|
|
- type: error
|
|
value: 'Float overflow: value exceeds range for f64.'
|
|
- name: Float f64 Overflow Negative
|
|
code: -1e310:f64
|
|
tokens:
|
|
- type: error
|
|
value: 'Float overflow: value exceeds range for f64.'
|
|
- name: Float f32 Precision Limit
|
|
code: 1.2345678:f32
|
|
tokens:
|
|
- type: f32
|
|
value: 1.2345678
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: 1.2345678
|
|
stack_final:
|
|
- type: f32
|
|
value: 1.2345678
|
|
- name: Float f32 High Precision
|
|
code: 3.141592653589793:f32
|
|
tokens:
|
|
- type: f32
|
|
value: 3.141592653589793
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: 3.141592653589793
|
|
stack_final:
|
|
- type: f32
|
|
value: 3.141592653589793
|
|
- name: Float f64 Precision Limit
|
|
code: 1.234567890123456:f64
|
|
tokens:
|
|
- type: f64
|
|
value: 1.234567890123456
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1.234567890123456
|
|
stack_final:
|
|
- type: f64
|
|
value: 1.234567890123456
|
|
- name: Float f64 High Precision
|
|
code: 3.141592653589793238:f64
|
|
tokens:
|
|
- type: f64
|
|
value: 3.141592653589793
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 3.141592653589793
|
|
stack_final:
|
|
- type: f64
|
|
value: 3.141592653589793
|
|
- name: Float f64 Close Numbers 1
|
|
code: 1.0000000000000001:f64
|
|
tokens:
|
|
- type: f64
|
|
value: 1.0
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1.0
|
|
stack_final:
|
|
- type: f64
|
|
value: 1.0
|
|
- name: Float f64 Close Numbers 2
|
|
code: 1.0000000000000002:f64
|
|
tokens:
|
|
- type: f64
|
|
value: 1.0000000000000002
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1.0000000000000002
|
|
stack_final:
|
|
- type: f64
|
|
value: 1.0000000000000002
|
|
- name: Float Invalid No Decimal Point
|
|
code: '42'
|
|
tokens:
|
|
- type: error
|
|
value: 'Not a valid float literal: missing decimal point.'
|
|
- name: Float Invalid Multiple Decimal Points
|
|
code: 3.14.159
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid float literal: multiple decimal points.'
|
|
- name: Float Invalid Only Decimal Point
|
|
code: .
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid float literal: no digits before or after decimal point.'
|
|
- name: Float Invalid Characters
|
|
code: 3.1a4
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid float literal: unexpected ''a'' in float.'
|
|
- name: Float Invalid Scientific No Exponent
|
|
code: 3.14e
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid float literal: missing exponent value.'
|
|
- name: Float Invalid Scientific Double E
|
|
code: 3.14e10e5
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid float literal: multiple exponent markers.'
|
|
- name: Float Invalid Scientific Invalid Exponent
|
|
code: 3.14eX
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid float literal: invalid exponent ''X''.'
|
|
- name: Float Invalid Leading Underscore
|
|
code: _3.14
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid float literal: leading underscore.'
|
|
- name: Float Invalid Underscore Before Decimal
|
|
code: '3_.14'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid float literal: underscore before decimal point.'
|
|
- name: Float Invalid Underscore After Decimal
|
|
code: '3._14'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid float literal: underscore after decimal point.'
|
|
- name: Float Invalid Type Annotation
|
|
code: 3.14:i32
|
|
tokens:
|
|
- type: error
|
|
value: 'Type mismatch: float literal cannot be annotated as integer type.'
|
|
- name: Float Invalid Type Name
|
|
code: 3.14:f16
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid type annotation: unknown type ''f16''.'
|
|
- name: Float Invalid Comma Separator
|
|
code: 1,234.56
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid float literal: unexpected '','' in float.'
|
|
- name: Float Default Leading Whitespace
|
|
code: ' 3.14'
|
|
tokens:
|
|
- type: f64
|
|
value: 3.14
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 3.14
|
|
stack_final:
|
|
- type: f64
|
|
value: 3.14
|
|
- name: Float Default Trailing Whitespace
|
|
code: '3.14 '
|
|
tokens:
|
|
- type: f64
|
|
value: 3.14
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 3.14
|
|
stack_final:
|
|
- type: f64
|
|
value: 3.14
|
|
- name: Float Default Both Whitespace
|
|
code: ' 3.14 '
|
|
tokens:
|
|
- type: f64
|
|
value: 3.14
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 3.14
|
|
stack_final:
|
|
- type: f64
|
|
value: 3.14
|
|
- name: Float f32 With Whitespace
|
|
code: ' 2.718:f32 '
|
|
tokens:
|
|
- type: f32
|
|
value: 2.718
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: 2.718
|
|
stack_final:
|
|
- type: f32
|
|
value: 2.718
|
|
- name: Float Default Pi Approximate
|
|
code: '3.141592653589793'
|
|
tokens:
|
|
- type: f64
|
|
value: 3.141592653589793
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 3.141592653589793
|
|
stack_final:
|
|
- type: f64
|
|
value: 3.141592653589793
|
|
- name: Float f32 Pi Approximate
|
|
code: 3.1415927:f32
|
|
tokens:
|
|
- type: f32
|
|
value: 3.1415927
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: 3.1415927
|
|
stack_final:
|
|
- type: f32
|
|
value: 3.1415927
|
|
- name: Float Default Euler Approximate
|
|
code: '2.718281828459045'
|
|
tokens:
|
|
- type: f64
|
|
value: 2.718281828459045
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 2.718281828459045
|
|
stack_final:
|
|
- type: f64
|
|
value: 2.718281828459045
|
|
- name: Float f32 Euler Approximate
|
|
code: 2.7182817:f32
|
|
tokens:
|
|
- type: f32
|
|
value: 2.7182817
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: 2.7182817
|
|
stack_final:
|
|
- type: f32
|
|
value: 2.7182817
|
|
- name: Float Default Golden Ratio
|
|
code: '1.618033988749895'
|
|
tokens:
|
|
- type: f64
|
|
value: 1.618033988749895
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1.618033988749895
|
|
stack_final:
|
|
- type: f64
|
|
value: 1.618033988749895
|
|
- name: Float Default Sqrt2
|
|
code: '1.4142135623730951'
|
|
tokens:
|
|
- type: f64
|
|
value: 1.4142135623730951
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 1.4142135623730951
|
|
stack_final:
|
|
- type: f64
|
|
value: 1.4142135623730951
|
|
- name: Float Default Positive Zero
|
|
code: '0.0'
|
|
tokens:
|
|
- type: f64
|
|
value: 0.0
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: 0.0
|
|
stack_final:
|
|
- type: f64
|
|
value: 0.0
|
|
- name: Float Default Negative Zero
|
|
code: '-0.0'
|
|
tokens:
|
|
- type: f64
|
|
value: -0.0
|
|
operations:
|
|
- function: push
|
|
type: f64
|
|
value: -0.0
|
|
stack_final:
|
|
- type: f64
|
|
value: -0.0
|
|
- name: Float f32 Positive Zero
|
|
code: 0.0:f32
|
|
tokens:
|
|
- type: f32
|
|
value: 0.0
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: 0.0
|
|
stack_final:
|
|
- type: f32
|
|
value: 0.0
|
|
- name: Float f32 Negative Zero
|
|
code: -0.0:f32
|
|
tokens:
|
|
- type: f32
|
|
value: -0.0
|
|
operations:
|
|
- function: push
|
|
type: f32
|
|
value: -0.0
|
|
stack_final:
|
|
- type: f32
|
|
value: -0.0
|
|
- name: Char Simple Letter A
|
|
code: '''A'''
|
|
tokens:
|
|
- type: char
|
|
value: A
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: A
|
|
stack_final:
|
|
- type: char
|
|
value: A
|
|
- name: Char Simple Letter a
|
|
code: '''a'''
|
|
tokens:
|
|
- type: char
|
|
value: a
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: a
|
|
stack_final:
|
|
- type: char
|
|
value: a
|
|
- name: Char Simple Letter Z
|
|
code: '''Z'''
|
|
tokens:
|
|
- type: char
|
|
value: Z
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: Z
|
|
stack_final:
|
|
- type: char
|
|
value: Z
|
|
- name: Char Simple Letter z
|
|
code: '''z'''
|
|
tokens:
|
|
- type: char
|
|
value: z
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: z
|
|
stack_final:
|
|
- type: char
|
|
value: z
|
|
- name: Char Digit 0
|
|
code: '''0'''
|
|
tokens:
|
|
- type: char
|
|
value: '0'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '0'
|
|
stack_final:
|
|
- type: char
|
|
value: '0'
|
|
- name: Char Digit 5
|
|
code: '''5'''
|
|
tokens:
|
|
- type: char
|
|
value: '5'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '5'
|
|
stack_final:
|
|
- type: char
|
|
value: '5'
|
|
- name: Char Digit 9
|
|
code: '''9'''
|
|
tokens:
|
|
- type: char
|
|
value: '9'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '9'
|
|
stack_final:
|
|
- type: char
|
|
value: '9'
|
|
- name: Char Space
|
|
code: ''' '''
|
|
tokens:
|
|
- type: char
|
|
value: ' '
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: ' '
|
|
stack_final:
|
|
- type: char
|
|
value: ' '
|
|
- name: Char Exclamation
|
|
code: '''!'''
|
|
tokens:
|
|
- type: char
|
|
value: '!'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '!'
|
|
stack_final:
|
|
- type: char
|
|
value: '!'
|
|
- name: Char Question Mark
|
|
code: '''?'''
|
|
tokens:
|
|
- type: char
|
|
value: '?'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '?'
|
|
stack_final:
|
|
- type: char
|
|
value: '?'
|
|
- name: Char Period
|
|
code: '''.'''
|
|
tokens:
|
|
- type: char
|
|
value: .
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: .
|
|
stack_final:
|
|
- type: char
|
|
value: .
|
|
- name: Char Comma
|
|
code: ''','''
|
|
tokens:
|
|
- type: char
|
|
value: ','
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: ','
|
|
stack_final:
|
|
- type: char
|
|
value: ','
|
|
- name: Char Semicolon
|
|
code: ''';'''
|
|
tokens:
|
|
- type: char
|
|
value: ;
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: ;
|
|
stack_final:
|
|
- type: char
|
|
value: ;
|
|
- name: Char Colon
|
|
code: ''':'''
|
|
tokens:
|
|
- type: char
|
|
value: ':'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: ':'
|
|
stack_final:
|
|
- type: char
|
|
value: ':'
|
|
- name: Char Plus
|
|
code: '''+'''
|
|
tokens:
|
|
- type: char
|
|
value: +
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: +
|
|
stack_final:
|
|
- type: char
|
|
value: +
|
|
- name: Char Minus
|
|
code: '''-'''
|
|
tokens:
|
|
- type: char
|
|
value: '-'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '-'
|
|
stack_final:
|
|
- type: char
|
|
value: '-'
|
|
- name: Char Asterisk
|
|
code: '''*'''
|
|
tokens:
|
|
- type: char
|
|
value: '*'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '*'
|
|
stack_final:
|
|
- type: char
|
|
value: '*'
|
|
- name: Char Slash
|
|
code: '''/'''
|
|
tokens:
|
|
- type: char
|
|
value: /
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: /
|
|
stack_final:
|
|
- type: char
|
|
value: /
|
|
- name: Char Equals
|
|
code: '''='''
|
|
tokens:
|
|
- type: char
|
|
value: '='
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '='
|
|
stack_final:
|
|
- type: char
|
|
value: '='
|
|
- name: Char Less Than
|
|
code: '''<'''
|
|
tokens:
|
|
- type: char
|
|
value: <
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: <
|
|
stack_final:
|
|
- type: char
|
|
value: <
|
|
- name: Char Greater Than
|
|
code: '''>'''
|
|
tokens:
|
|
- type: char
|
|
value: '>'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '>'
|
|
stack_final:
|
|
- type: char
|
|
value: '>'
|
|
- name: Char Left Paren
|
|
code: '''('''
|
|
tokens:
|
|
- type: char
|
|
value: (
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: (
|
|
stack_final:
|
|
- type: char
|
|
value: (
|
|
- name: Char Right Paren
|
|
code: ''')'''
|
|
tokens:
|
|
- type: char
|
|
value: )
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: )
|
|
stack_final:
|
|
- type: char
|
|
value: )
|
|
- name: Char Left Bracket
|
|
code: '''['''
|
|
tokens:
|
|
- type: char
|
|
value: '['
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '['
|
|
stack_final:
|
|
- type: char
|
|
value: '['
|
|
- name: Char Right Bracket
|
|
code: ''']'''
|
|
tokens:
|
|
- type: char
|
|
value: ']'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: ']'
|
|
stack_final:
|
|
- type: char
|
|
value: ']'
|
|
- name: Char Left Brace
|
|
code: '''{'''
|
|
tokens:
|
|
- type: char
|
|
value: '{'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '{'
|
|
stack_final:
|
|
- type: char
|
|
value: '{'
|
|
- name: Char Right Brace
|
|
code: '''}'''
|
|
tokens:
|
|
- type: char
|
|
value: '}'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '}'
|
|
stack_final:
|
|
- type: char
|
|
value: '}'
|
|
- name: Char Escape Backslash
|
|
code: '''\\'''
|
|
tokens:
|
|
- type: char
|
|
value: \
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: \
|
|
stack_final:
|
|
- type: char
|
|
value: \
|
|
- name: Char Escape Double quote
|
|
code: '''\\"'''
|
|
tokens:
|
|
- type: char
|
|
value: '"'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '"'
|
|
stack_final:
|
|
- type: char
|
|
value: '"'
|
|
- name: Char Escape Newline
|
|
code: '''\n'''
|
|
tokens:
|
|
- type: char
|
|
value: '
|
|
|
|
'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '
|
|
|
|
'
|
|
stack_final:
|
|
- type: char
|
|
value: '
|
|
|
|
'
|
|
- name: Char Escape Single quote
|
|
code: '''\'''''
|
|
tokens:
|
|
- type: char
|
|
value: ''''
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: ''''
|
|
stack_final:
|
|
- type: char
|
|
value: ''''
|
|
- name: Char Escape Tab
|
|
code: '''\t'''
|
|
tokens:
|
|
- type: char
|
|
value: "\t"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\t"
|
|
stack_final:
|
|
- type: char
|
|
value: "\t"
|
|
- name: Char Escape Null character
|
|
code: '''\0'''
|
|
tokens:
|
|
- type: char
|
|
value: "\0"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\0"
|
|
stack_final:
|
|
- type: char
|
|
value: "\0"
|
|
- name: Char Escape Carriage return
|
|
code: '''\r'''
|
|
tokens:
|
|
- type: char
|
|
value: "\r"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\r"
|
|
stack_final:
|
|
- type: char
|
|
value: "\r"
|
|
- name: Char Newline
|
|
code: '''\n'''
|
|
tokens:
|
|
- type: char
|
|
value: '
|
|
|
|
'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '
|
|
|
|
'
|
|
stack_final:
|
|
- type: char
|
|
value: '
|
|
|
|
'
|
|
- name: Char Carriage Return
|
|
code: '''\r'''
|
|
tokens:
|
|
- type: char
|
|
value: "\r"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\r"
|
|
stack_final:
|
|
- type: char
|
|
value: "\r"
|
|
- name: Char Tab
|
|
code: '''\t'''
|
|
tokens:
|
|
- type: char
|
|
value: "\t"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\t"
|
|
stack_final:
|
|
- type: char
|
|
value: "\t"
|
|
- name: Char Backslash
|
|
code: '''\\'''
|
|
tokens:
|
|
- type: char
|
|
value: \
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: \
|
|
stack_final:
|
|
- type: char
|
|
value: \
|
|
- name: Char Double Quote
|
|
code: '''\\"'''
|
|
tokens:
|
|
- type: char
|
|
value: '"'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '"'
|
|
stack_final:
|
|
- type: char
|
|
value: '"'
|
|
- name: Char Single Quote
|
|
code: '''\'''''
|
|
tokens:
|
|
- type: char
|
|
value: ''''
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: ''''
|
|
stack_final:
|
|
- type: char
|
|
value: ''''
|
|
- name: Char Null
|
|
code: '''\0'''
|
|
tokens:
|
|
- type: char
|
|
value: "\0"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\0"
|
|
stack_final:
|
|
- type: char
|
|
value: "\0"
|
|
- name: Char Hex Escape \x41
|
|
code: '''\x41'''
|
|
tokens:
|
|
- type: char
|
|
value: A
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: A
|
|
stack_final:
|
|
- type: char
|
|
value: A
|
|
- name: Char Hex Escape \x61
|
|
code: '''\x61'''
|
|
tokens:
|
|
- type: char
|
|
value: a
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: a
|
|
stack_final:
|
|
- type: char
|
|
value: a
|
|
- name: Char Hex Escape \x20
|
|
code: '''\x20'''
|
|
tokens:
|
|
- type: char
|
|
value: ' '
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: ' '
|
|
stack_final:
|
|
- type: char
|
|
value: ' '
|
|
- name: Char Hex Escape \x00
|
|
code: '''\x00'''
|
|
tokens:
|
|
- type: char
|
|
value: "\0"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\0"
|
|
stack_final:
|
|
- type: char
|
|
value: "\0"
|
|
- name: Char Hex Escape \xFF
|
|
code: '''\xFF'''
|
|
tokens:
|
|
- type: char
|
|
value: "\xFF"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\xFF"
|
|
stack_final:
|
|
- type: char
|
|
value: "\xFF"
|
|
- name: Char Hex Lowercase A
|
|
code: '''\x61'''
|
|
tokens:
|
|
- type: char
|
|
value: a
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: a
|
|
stack_final:
|
|
- type: char
|
|
value: a
|
|
- name: Char Hex Uppercase A
|
|
code: '''\x41'''
|
|
tokens:
|
|
- type: char
|
|
value: A
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: A
|
|
stack_final:
|
|
- type: char
|
|
value: A
|
|
- name: Char Hex Space
|
|
code: '''\x20'''
|
|
tokens:
|
|
- type: char
|
|
value: ' '
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: ' '
|
|
stack_final:
|
|
- type: char
|
|
value: ' '
|
|
- name: Char Hex Tab
|
|
code: '''\x09'''
|
|
tokens:
|
|
- type: char
|
|
value: "\t"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\t"
|
|
stack_final:
|
|
- type: char
|
|
value: "\t"
|
|
- name: Char Hex Newline
|
|
code: '''\x0A'''
|
|
tokens:
|
|
- type: char
|
|
value: '
|
|
|
|
'
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: '
|
|
|
|
'
|
|
stack_final:
|
|
- type: char
|
|
value: '
|
|
|
|
'
|
|
- name: Char Hex Max ASCII
|
|
code: '''\x7F'''
|
|
tokens:
|
|
- type: char
|
|
value: "\x7F"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\x7F"
|
|
stack_final:
|
|
- type: char
|
|
value: "\x7F"
|
|
- name: Char With Leading Whitespace
|
|
code: ' ''A'''
|
|
tokens:
|
|
- type: char
|
|
value: A
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: A
|
|
stack_final:
|
|
- type: char
|
|
value: A
|
|
- name: Char With Trailing Whitespace
|
|
code: '''A'' '
|
|
tokens:
|
|
- type: char
|
|
value: A
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: A
|
|
stack_final:
|
|
- type: char
|
|
value: A
|
|
- name: Char With Both Whitespace
|
|
code: ' ''A'' '
|
|
tokens:
|
|
- type: char
|
|
value: A
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: A
|
|
stack_final:
|
|
- type: char
|
|
value: A
|
|
- name: Char Tab Before
|
|
code: \t'B'
|
|
tokens:
|
|
- type: char
|
|
value: B
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: B
|
|
stack_final:
|
|
- type: char
|
|
value: B
|
|
- name: Char Newline Before
|
|
code: \n'C'
|
|
tokens:
|
|
- type: char
|
|
value: C
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: C
|
|
stack_final:
|
|
- type: char
|
|
value: C
|
|
- name: Char Empty Literal
|
|
code: ''''''
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid character literal: empty character literal.'
|
|
- name: Char Multiple Characters
|
|
code: '''AB'''
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid character literal: multiple characters without escape sequence.'
|
|
- name: Char Unclosed Quote
|
|
code: '''A'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid character literal: unclosed character literal.'
|
|
- name: Char Unescaped Newline
|
|
code: '''\n'''
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid character literal: unescaped newline in character literal.'
|
|
- name: Char Invalid Escape
|
|
code: '''\\q'''
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid character literal: unknown escape sequence ''\\q''.'
|
|
- name: Char Hex Escape Too Short
|
|
code: '''\\x4'''
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid character literal: hexadecimal escape must have exactly 2 digits.'
|
|
- name: Char Hex Escape Too Long
|
|
code: '''\\x414'''
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid character literal: hexadecimal escape must have exactly 2 digits.'
|
|
- name: Char Hex Invalid Digit
|
|
code: '''\\xGG'''
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid character literal: invalid hexadecimal digit ''G''.'
|
|
- name: Char Double Quotes
|
|
code: '"A"'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid character literal: character literals must use single quotes.'
|
|
- name: Char No Quotes
|
|
code: A
|
|
tokens:
|
|
- type: error
|
|
value: 'Not a character literal: missing quotes.'
|
|
- name: Char ASCII Control SOH
|
|
code: '''\x01'''
|
|
tokens:
|
|
- type: char
|
|
value: "\x01"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\x01"
|
|
stack_final:
|
|
- type: char
|
|
value: "\x01"
|
|
- name: Char ASCII Control BEL
|
|
code: '''\x07'''
|
|
tokens:
|
|
- type: char
|
|
value: "\a"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\a"
|
|
stack_final:
|
|
- type: char
|
|
value: "\a"
|
|
- name: Char ASCII Control ESC
|
|
code: '''\x1B'''
|
|
tokens:
|
|
- type: char
|
|
value: "\e"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\e"
|
|
stack_final:
|
|
- type: char
|
|
value: "\e"
|
|
- name: Char ASCII Control DEL
|
|
code: '''\x7F'''
|
|
tokens:
|
|
- type: char
|
|
value: "\x7F"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\x7F"
|
|
stack_final:
|
|
- type: char
|
|
value: "\x7F"
|
|
- name: Char Extended ASCII Lower
|
|
code: '''\x80'''
|
|
tokens:
|
|
- type: char
|
|
value: "\x80"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\x80"
|
|
stack_final:
|
|
- type: char
|
|
value: "\x80"
|
|
- name: Char Extended ASCII Upper
|
|
code: '''\xFF'''
|
|
tokens:
|
|
- type: char
|
|
value: "\xFF"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\xFF"
|
|
stack_final:
|
|
- type: char
|
|
value: "\xFF"
|
|
- name: Char Backslash Literal
|
|
code: '''\\'''
|
|
tokens:
|
|
- type: char
|
|
value: \
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: \
|
|
stack_final:
|
|
- type: char
|
|
value: \
|
|
- name: Char Single Quote Escaped
|
|
code: '''\'''''
|
|
tokens:
|
|
- type: char
|
|
value: ''''
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: ''''
|
|
stack_final:
|
|
- type: char
|
|
value: ''''
|
|
- name: Char Hex Lowercase x
|
|
code: '''\x41'''
|
|
tokens:
|
|
- type: char
|
|
value: A
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: A
|
|
stack_final:
|
|
- type: char
|
|
value: A
|
|
- name: Char Hex Digits Uppercase
|
|
code: '''\xFF'''
|
|
tokens:
|
|
- type: char
|
|
value: "\xFF"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\xFF"
|
|
stack_final:
|
|
- type: char
|
|
value: "\xFF"
|
|
- name: Char Hex Digits Lowercase
|
|
code: '''\xff'''
|
|
tokens:
|
|
- type: char
|
|
value: "\xFF"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\xFF"
|
|
stack_final:
|
|
- type: char
|
|
value: "\xFF"
|
|
- name: Char Hex Digits Mixed
|
|
code: '''\xAb'''
|
|
tokens:
|
|
- type: char
|
|
value: "\xAB"
|
|
operations:
|
|
- function: push
|
|
type: char
|
|
value: "\xAB"
|
|
stack_final:
|
|
- type: char
|
|
value: "\xAB"
|
|
- name: String Empty
|
|
code: '""'
|
|
tokens:
|
|
- type: string
|
|
value: ''
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: ''
|
|
stack_final:
|
|
- type: string
|
|
value: ''
|
|
- name: String Simple
|
|
code: '"hello"'
|
|
tokens:
|
|
- type: string
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello
|
|
stack_final:
|
|
- type: string
|
|
value: hello
|
|
- name: String With Space
|
|
code: '"hello world"'
|
|
tokens:
|
|
- type: string
|
|
value: hello world
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello world
|
|
stack_final:
|
|
- type: string
|
|
value: hello world
|
|
- name: String Single Char
|
|
code: '"A"'
|
|
tokens:
|
|
- type: string
|
|
value: A
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: A
|
|
stack_final:
|
|
- type: string
|
|
value: A
|
|
- name: String Multiple Words
|
|
code: '"The quick brown fox"'
|
|
tokens:
|
|
- type: string
|
|
value: The quick brown fox
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: The quick brown fox
|
|
stack_final:
|
|
- type: string
|
|
value: The quick brown fox
|
|
- name: String With Numbers
|
|
code: '"abc123"'
|
|
tokens:
|
|
- type: string
|
|
value: abc123
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: abc123
|
|
stack_final:
|
|
- type: string
|
|
value: abc123
|
|
- name: String Only Numbers
|
|
code: '"12345"'
|
|
tokens:
|
|
- type: string
|
|
value: '12345'
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: '12345'
|
|
stack_final:
|
|
- type: string
|
|
value: '12345'
|
|
- name: String Mixed Case
|
|
code: '"HeLLo WoRLd"'
|
|
tokens:
|
|
- type: string
|
|
value: HeLLo WoRLd
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: HeLLo WoRLd
|
|
stack_final:
|
|
- type: string
|
|
value: HeLLo WoRLd
|
|
- name: String With Punctuation
|
|
code: '"Hello, World!"'
|
|
tokens:
|
|
- type: string
|
|
value: Hello, World!
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: Hello, World!
|
|
stack_final:
|
|
- type: string
|
|
value: Hello, World!
|
|
- name: String With Symbols
|
|
code: '"@#$%^&*()"'
|
|
tokens:
|
|
- type: string
|
|
value: '@#$%^&*()'
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: '@#$%^&*()'
|
|
stack_final:
|
|
- type: string
|
|
value: '@#$%^&*()'
|
|
- name: String Multiple Spaces
|
|
code: '"hello world"'
|
|
tokens:
|
|
- type: string
|
|
value: hello world
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello world
|
|
stack_final:
|
|
- type: string
|
|
value: hello world
|
|
- name: String Leading Space
|
|
code: '" hello"'
|
|
tokens:
|
|
- type: string
|
|
value: ' hello'
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: ' hello'
|
|
stack_final:
|
|
- type: string
|
|
value: ' hello'
|
|
- name: String Trailing Space
|
|
code: '"hello "'
|
|
tokens:
|
|
- type: string
|
|
value: 'hello '
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: 'hello '
|
|
stack_final:
|
|
- type: string
|
|
value: 'hello '
|
|
- name: String Only Spaces
|
|
code: '" "'
|
|
tokens:
|
|
- type: string
|
|
value: ' '
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: ' '
|
|
stack_final:
|
|
- type: string
|
|
value: ' '
|
|
- name: String Newline
|
|
code: '"hello\nworld"'
|
|
tokens:
|
|
- type: string
|
|
value: hello\nworld
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello\nworld
|
|
stack_final:
|
|
- type: string
|
|
value: hello\nworld
|
|
- name: String Tab
|
|
code: '"hello\tworld"'
|
|
tokens:
|
|
- type: string
|
|
value: hello\tworld
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello\tworld
|
|
stack_final:
|
|
- type: string
|
|
value: hello\tworld
|
|
- name: String Carriage Return
|
|
code: '"hello\rworld"'
|
|
tokens:
|
|
- type: string
|
|
value: hello\rworld
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello\rworld
|
|
stack_final:
|
|
- type: string
|
|
value: hello\rworld
|
|
- name: String Backslash
|
|
code: '"hello\\world"'
|
|
tokens:
|
|
- type: string
|
|
value: hello\\world
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello\\world
|
|
stack_final:
|
|
- type: string
|
|
value: hello\\world
|
|
- name: String Double Quote
|
|
code: '"say \\"hello\\""'
|
|
tokens:
|
|
- type: string
|
|
value: say \"hello\"
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: say \"hello\"
|
|
stack_final:
|
|
- type: string
|
|
value: say \"hello\"
|
|
- name: String Single Quote
|
|
code: '"it\''s"'
|
|
tokens:
|
|
- type: string
|
|
value: it's
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: it's
|
|
stack_final:
|
|
- type: string
|
|
value: it's
|
|
- name: String Null Char
|
|
code: '"hello\0world"'
|
|
tokens:
|
|
- type: string
|
|
value: hello\0world
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello\0world
|
|
stack_final:
|
|
- type: string
|
|
value: hello\0world
|
|
- name: String Multiple Escapes
|
|
code: '"line1\nline2\nline3"'
|
|
tokens:
|
|
- type: string
|
|
value: line1\nline2\nline3
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: line1\nline2\nline3
|
|
stack_final:
|
|
- type: string
|
|
value: line1\nline2\nline3
|
|
- name: String Mixed Escapes
|
|
code: '"tab\there\nnewline\\backslash"'
|
|
tokens:
|
|
- type: string
|
|
value: tab\there\nnewline\\backslash
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: tab\there\nnewline\\backslash
|
|
stack_final:
|
|
- type: string
|
|
value: tab\there\nnewline\\backslash
|
|
- name: String Escape At Start
|
|
code: '"\nhello"'
|
|
tokens:
|
|
- type: string
|
|
value: \nhello
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \nhello
|
|
stack_final:
|
|
- type: string
|
|
value: \nhello
|
|
- name: String Escape At End
|
|
code: '"hello\n"'
|
|
tokens:
|
|
- type: string
|
|
value: hello\n
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello\n
|
|
stack_final:
|
|
- type: string
|
|
value: hello\n
|
|
- name: String Consecutive Escapes
|
|
code: '"\n\n\n"'
|
|
tokens:
|
|
- type: string
|
|
value: \n\n\n
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \n\n\n
|
|
stack_final:
|
|
- type: string
|
|
value: \n\n\n
|
|
- name: String All Escapes
|
|
code: '"\n\r\t\\"\''\0"'
|
|
tokens:
|
|
- type: string
|
|
value: \n\r\t\\\"\'\0
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \n\r\t\\\"\'\0
|
|
stack_final:
|
|
- type: string
|
|
value: \n\r\t\\\"\'\0
|
|
- name: String Hex Letter A
|
|
code: '"\x41"'
|
|
tokens:
|
|
- type: string
|
|
value: A
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: A
|
|
stack_final:
|
|
- type: string
|
|
value: A
|
|
- name: String Hex Letter a
|
|
code: '"\x61"'
|
|
tokens:
|
|
- type: string
|
|
value: a
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: a
|
|
stack_final:
|
|
- type: string
|
|
value: a
|
|
- name: String Hex Space
|
|
code: '"\x20"'
|
|
tokens:
|
|
- type: string
|
|
value: ' '
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: ' '
|
|
stack_final:
|
|
- type: string
|
|
value: ' '
|
|
- name: String Hex Tab
|
|
code: '"\x09"'
|
|
tokens:
|
|
- type: string
|
|
value: \t
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \t
|
|
stack_final:
|
|
- type: string
|
|
value: \t
|
|
- name: String Hex Newline
|
|
code: '"\x0A"'
|
|
tokens:
|
|
- type: string
|
|
value: \n
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \n
|
|
stack_final:
|
|
- type: string
|
|
value: \n
|
|
- name: String Multiple Hex
|
|
code: '"\x48\x65\x6C\x6C\x6F"'
|
|
tokens:
|
|
- type: string
|
|
value: Hello
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: Hello
|
|
stack_final:
|
|
- type: string
|
|
value: Hello
|
|
- name: String Hex Mixed
|
|
code: '"Hello\x20World"'
|
|
tokens:
|
|
- type: string
|
|
value: Hello World
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: Hello World
|
|
stack_final:
|
|
- type: string
|
|
value: Hello World
|
|
- name: String Hex Extended ASCII
|
|
code: '"\xA9\xAE"'
|
|
tokens:
|
|
- type: string
|
|
value: "\xA9\xAE"
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: "\xA9\xAE"
|
|
stack_final:
|
|
- type: string
|
|
value: "\xA9\xAE"
|
|
- name: String Hex Uppercase
|
|
code: '"\xFF"'
|
|
tokens:
|
|
- type: string
|
|
value: \xFF
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \xFF
|
|
stack_final:
|
|
- type: string
|
|
value: \xFF
|
|
- name: String Hex Lowercase
|
|
code: '"\xff"'
|
|
tokens:
|
|
- type: string
|
|
value: \xff
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \xff
|
|
stack_final:
|
|
- type: string
|
|
value: \xff
|
|
- name: String Hex Mixed Case
|
|
code: '"\xAb"'
|
|
tokens:
|
|
- type: string
|
|
value: \xAb
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \xAb
|
|
stack_final:
|
|
- type: string
|
|
value: \xAb
|
|
- name: String Hex Zero
|
|
code: '"\x00"'
|
|
tokens:
|
|
- type: string
|
|
value: \0
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \0
|
|
stack_final:
|
|
- type: string
|
|
value: \0
|
|
- name: String Hex Max
|
|
code: '"\xFF"'
|
|
tokens:
|
|
- type: string
|
|
value: \xFF
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \xFF
|
|
stack_final:
|
|
- type: string
|
|
value: \xFF
|
|
- name: String With Escaped Newlines
|
|
code: '"line1\nline2\nline3"'
|
|
tokens:
|
|
- type: string
|
|
value: line1\nline2\nline3
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: line1\nline2\nline3
|
|
stack_final:
|
|
- type: string
|
|
value: line1\nline2\nline3
|
|
- name: String Paragraph
|
|
code: '"First line.\nSecond line.\nThird line."'
|
|
tokens:
|
|
- type: string
|
|
value: First line.\nSecond line.\nThird line.
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: First line.\nSecond line.\nThird line.
|
|
stack_final:
|
|
- type: string
|
|
value: First line.\nSecond line.\nThird line.
|
|
- name: String Mixed Line Endings
|
|
code: '"Windows\r\nUnix\nMac\r"'
|
|
tokens:
|
|
- type: string
|
|
value: Windows\r\nUnix\nMac\r
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: Windows\r\nUnix\nMac\r
|
|
stack_final:
|
|
- type: string
|
|
value: Windows\r\nUnix\nMac\r
|
|
- name: String Leading Whitespace Outside
|
|
code: ' "hello"'
|
|
tokens:
|
|
- type: string
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello
|
|
stack_final:
|
|
- type: string
|
|
value: hello
|
|
- name: String Trailing Whitespace Outside
|
|
code: '"hello" '
|
|
tokens:
|
|
- type: string
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello
|
|
stack_final:
|
|
- type: string
|
|
value: hello
|
|
- name: String Both Whitespace Outside
|
|
code: ' "hello" '
|
|
tokens:
|
|
- type: string
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello
|
|
stack_final:
|
|
- type: string
|
|
value: hello
|
|
- name: String Tab Before
|
|
code: "\t\"hello\""
|
|
tokens:
|
|
- type: string
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello
|
|
stack_final:
|
|
- type: string
|
|
value: hello
|
|
- name: String Tabs And Newlines Inside
|
|
code: '"hello\t\tworld\n\ntest"'
|
|
tokens:
|
|
- type: string
|
|
value: hello\t\tworld\n\ntest
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: hello\t\tworld\n\ntest
|
|
stack_final:
|
|
- type: string
|
|
value: hello\t\tworld\n\ntest
|
|
- name: String Only Tabs
|
|
code: '"\t\t\t"'
|
|
tokens:
|
|
- type: string
|
|
value: \t\t\t
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \t\t\t
|
|
stack_final:
|
|
- type: string
|
|
value: \t\t\t
|
|
- name: String Only Newlines
|
|
code: '"\n\n\n"'
|
|
tokens:
|
|
- type: string
|
|
value: \n\n\n
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \n\n\n
|
|
stack_final:
|
|
- type: string
|
|
value: \n\n\n
|
|
- name: String Mixed Whitespace
|
|
code: '" \t\n\r "'
|
|
tokens:
|
|
- type: string
|
|
value: ' \t\n\r '
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: ' \t\n\r '
|
|
stack_final:
|
|
- type: string
|
|
value: ' \t\n\r '
|
|
- name: String Sentence
|
|
code: '"The quick brown fox jumps over the lazy dog."'
|
|
tokens:
|
|
- type: string
|
|
value: The quick brown fox jumps over the lazy dog.
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: The quick brown fox jumps over the lazy dog.
|
|
stack_final:
|
|
- type: string
|
|
value: The quick brown fox jumps over the lazy dog.
|
|
- name: String Multiple Sentences
|
|
code: '"First sentence. Second sentence. Third sentence."'
|
|
tokens:
|
|
- type: string
|
|
value: First sentence. Second sentence. Third sentence.
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: First sentence. Second sentence. Third sentence.
|
|
stack_final:
|
|
- type: string
|
|
value: First sentence. Second sentence. Third sentence.
|
|
- name: String Long With Escapes
|
|
code: '"This is a long string.\nIt has multiple lines.\nAnd some tabs\there.\nPlus
|
|
quotes "like this"."'
|
|
tokens:
|
|
- type: string
|
|
value: This is a long string.\nIt has multiple lines.\nAnd some tabs\there.\nPlus
|
|
quotes \"like this\".
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: This is a long string.\nIt has multiple lines.\nAnd some tabs\there.\nPlus
|
|
quotes \"like this\".
|
|
stack_final:
|
|
- type: string
|
|
value: This is a long string.\nIt has multiple lines.\nAnd some tabs\there.\nPlus
|
|
quotes \"like this\".
|
|
- name: String Repetitive
|
|
code: '"aaaaaaaaaa"'
|
|
tokens:
|
|
- type: string
|
|
value: aaaaaaaaaa
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: aaaaaaaaaa
|
|
stack_final:
|
|
- type: string
|
|
value: aaaaaaaaaa
|
|
- name: String ASCII Printable
|
|
code: '" !#$%&''()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~"'
|
|
tokens:
|
|
- type: string
|
|
value: ' !#$%&''()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~'
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: ' !#$%&''()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~'
|
|
stack_final:
|
|
- type: string
|
|
value: ' !#$%&''()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~'
|
|
- name: String Code Like
|
|
code: '"int main() { return 0; }"'
|
|
tokens:
|
|
- type: string
|
|
value: int main() { return 0; }
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: int main() { return 0; }
|
|
stack_final:
|
|
- type: string
|
|
value: int main() { return 0; }
|
|
- name: String JSON Like
|
|
code: '"{{\\"key\\": \\"value\\"}}"'
|
|
tokens:
|
|
- type: string
|
|
value: '{\"key\": \"value\"}'
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: '{\"key\": \"value\"}'
|
|
stack_final:
|
|
- type: string
|
|
value: '{\"key\": \"value\"}'
|
|
- name: String URL
|
|
code: '"https://example.com/path?query=value"'
|
|
tokens:
|
|
- type: string
|
|
value: https://example.com/path?query=value
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: https://example.com/path?query=value
|
|
stack_final:
|
|
- type: string
|
|
value: https://example.com/path?query=value
|
|
- name: String Email
|
|
code: '"user@example.com"'
|
|
tokens:
|
|
- type: string
|
|
value: user@example.com
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: user@example.com
|
|
stack_final:
|
|
- type: string
|
|
value: user@example.com
|
|
- name: String Unix Path
|
|
code: '"/home/user/file.txt"'
|
|
tokens:
|
|
- type: string
|
|
value: /home/user/file.txt
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: /home/user/file.txt
|
|
stack_final:
|
|
- type: string
|
|
value: /home/user/file.txt
|
|
- name: String Windows Path
|
|
code: '"C:\\Users\\file.txt"'
|
|
tokens:
|
|
- type: string
|
|
value: C:\\Users\\file.txt
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: C:\\Users\\file.txt
|
|
stack_final:
|
|
- type: string
|
|
value: C:\\Users\\file.txt
|
|
- name: String SQL Like
|
|
code: '"SELECT * FROM users WHERE id = 1"'
|
|
tokens:
|
|
- type: string
|
|
value: SELECT * FROM users WHERE id = 1
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: SELECT * FROM users WHERE id = 1
|
|
stack_final:
|
|
- type: string
|
|
value: SELECT * FROM users WHERE id = 1
|
|
- name: String Regex Like
|
|
code: '"[a-zA-Z0-9]+"'
|
|
tokens:
|
|
- type: string
|
|
value: '[a-zA-Z0-9]+'
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: '[a-zA-Z0-9]+'
|
|
stack_final:
|
|
- type: string
|
|
value: '[a-zA-Z0-9]+'
|
|
- name: String Unclosed
|
|
code: '"hello'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid string literal: unclosed string literal.'
|
|
- name: String Unescaped Newline
|
|
code: '"hello\nworld"'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid string literal: unescaped newline in string literal.'
|
|
- name: String Invalid Escape
|
|
code: '"hello\\qworld"'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid string literal: unknown escape sequence ''\\q''.'
|
|
- name: String Hex Too Short
|
|
code: '"\x4"'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid string literal: hexadecimal escape must have exactly 2 digits.'
|
|
- name: String Hex Too Long
|
|
code: '"\\x414"'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid string literal: hexadecimal escape must have exactly 2 digits.'
|
|
- name: String Hex Invalid Digit
|
|
code: '"\\xGG"'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid string literal: invalid hexadecimal digit ''G''.'
|
|
- name: String Single Quotes
|
|
code: '''hello'''
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid string literal: string literals must use double quotes.'
|
|
- name: String Backslash At End
|
|
code: '"hello\\"'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid string literal: incomplete escape sequence at end.'
|
|
- name: String Only Escapes
|
|
code: '"\n\t\r"'
|
|
tokens:
|
|
- type: string
|
|
value: \n\t\r
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \n\t\r
|
|
stack_final:
|
|
- type: string
|
|
value: \n\t\r
|
|
- name: String With Nulls
|
|
code: '"a\0b\0c"'
|
|
tokens:
|
|
- type: string
|
|
value: a\0b\0c
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: a\0b\0c
|
|
stack_final:
|
|
- type: string
|
|
value: a\0b\0c
|
|
- name: String Many Escapes
|
|
code: '"\n\n\n\n\n\n\n\n\n\n"'
|
|
tokens:
|
|
- type: string
|
|
value: \n\n\n\n\n\n\n\n\n\n
|
|
operations:
|
|
- function: push
|
|
type: string
|
|
value: \n\n\n\n\n\n\n\n\n\n
|
|
stack_final:
|
|
- type: string
|
|
value: \n\n\n\n\n\n\n\n\n\n
|
|
- name: Identifier Simple Lowercase
|
|
code: hello
|
|
tokens:
|
|
- type: identifier
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: hello
|
|
stack_final:
|
|
- type: identifier
|
|
value: hello
|
|
- name: Identifier Simple Uppercase
|
|
code: HELLO
|
|
tokens:
|
|
- type: identifier
|
|
value: HELLO
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: HELLO
|
|
stack_final:
|
|
- type: identifier
|
|
value: HELLO
|
|
- name: Identifier Mixed Case
|
|
code: HelloWorld
|
|
tokens:
|
|
- type: identifier
|
|
value: HelloWorld
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: HelloWorld
|
|
stack_final:
|
|
- type: identifier
|
|
value: HelloWorld
|
|
- name: Identifier Single Letter
|
|
code: x
|
|
tokens:
|
|
- type: identifier
|
|
value: x
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: x
|
|
stack_final:
|
|
- type: identifier
|
|
value: x
|
|
- name: Identifier Single Letter Upper
|
|
code: X
|
|
tokens:
|
|
- type: identifier
|
|
value: X
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: X
|
|
stack_final:
|
|
- type: identifier
|
|
value: X
|
|
- name: Identifier With Numbers
|
|
code: var123
|
|
tokens:
|
|
- type: identifier
|
|
value: var123
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: var123
|
|
stack_final:
|
|
- type: identifier
|
|
value: var123
|
|
- name: Identifier Numbers End
|
|
code: myVar2
|
|
tokens:
|
|
- type: identifier
|
|
value: myVar2
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: myVar2
|
|
stack_final:
|
|
- type: identifier
|
|
value: myVar2
|
|
- name: Identifier Mixed Numbers
|
|
code: a1b2c3
|
|
tokens:
|
|
- type: identifier
|
|
value: a1b2c3
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: a1b2c3
|
|
stack_final:
|
|
- type: identifier
|
|
value: a1b2c3
|
|
- name: Identifier With Underscore
|
|
code: hello_world
|
|
tokens:
|
|
- type: identifier
|
|
value: hello_world
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: hello_world
|
|
stack_final:
|
|
- type: identifier
|
|
value: hello_world
|
|
- name: Identifier Leading Underscore
|
|
code: _private
|
|
tokens:
|
|
- type: identifier
|
|
value: _private
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: _private
|
|
stack_final:
|
|
- type: identifier
|
|
value: _private
|
|
- name: Identifier Multiple Underscores
|
|
code: my_long_var_name
|
|
tokens:
|
|
- type: identifier
|
|
value: my_long_var_name
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: my_long_var_name
|
|
stack_final:
|
|
- type: identifier
|
|
value: my_long_var_name
|
|
- name: Identifier Double Underscore
|
|
code: my__var
|
|
tokens:
|
|
- type: identifier
|
|
value: my__var
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: my__var
|
|
stack_final:
|
|
- type: identifier
|
|
value: my__var
|
|
- name: Identifier Trailing Underscore
|
|
code: var_
|
|
tokens:
|
|
- type: identifier
|
|
value: var_
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: var_
|
|
stack_final:
|
|
- type: identifier
|
|
value: var_
|
|
- name: Identifier Only Underscores
|
|
code: ___
|
|
tokens:
|
|
- type: identifier
|
|
value: ___
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: ___
|
|
stack_final:
|
|
- type: identifier
|
|
value: ___
|
|
- name: Identifier Snake Case
|
|
code: my_variable_name
|
|
tokens:
|
|
- type: identifier
|
|
value: my_variable_name
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: my_variable_name
|
|
stack_final:
|
|
- type: identifier
|
|
value: my_variable_name
|
|
- name: Identifier Camel Case
|
|
code: myVariableName
|
|
tokens:
|
|
- type: identifier
|
|
value: myVariableName
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: myVariableName
|
|
stack_final:
|
|
- type: identifier
|
|
value: myVariableName
|
|
- name: Identifier Pascal Case
|
|
code: MyClassName
|
|
tokens:
|
|
- type: identifier
|
|
value: MyClassName
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: MyClassName
|
|
stack_final:
|
|
- type: identifier
|
|
value: MyClassName
|
|
- name: Identifier All Caps
|
|
code: MY_CONSTANT
|
|
tokens:
|
|
- type: identifier
|
|
value: MY_CONSTANT
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: MY_CONSTANT
|
|
stack_final:
|
|
- type: identifier
|
|
value: MY_CONSTANT
|
|
- name: Identifier Literal Simple
|
|
code: ::hello
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: hello
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: hello
|
|
- name: Identifier Literal Uppercase
|
|
code: ::Point
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: Point
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: Point
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: Point
|
|
- name: Identifier Literal Snake Case
|
|
code: ::my_var
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: my_var
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: my_var
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: my_var
|
|
- name: Identifier Literal Type i64
|
|
code: ::i64
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: i64
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: i64
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: i64
|
|
- name: Identifier Literal Type String
|
|
code: ::String
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: String
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: String
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: String
|
|
- name: Identifier Literal Type Point
|
|
code: ::Point
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: Point
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: Point
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: Point
|
|
- name: Identifier Literal Trait Addable
|
|
code: ::Addable
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: Addable
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: Addable
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: Addable
|
|
- name: Identifier Literal Trait Drawable
|
|
code: ::Drawable
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: Drawable
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: Drawable
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: Drawable
|
|
- name: Identifier Literal Field x
|
|
code: ::x
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: x
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: x
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: x
|
|
- name: Identifier Literal Field width
|
|
code: ::width
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: width
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: width
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: width
|
|
- name: Identifier Literal With Underscore
|
|
code: ::_private
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: _private
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: _private
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: _private
|
|
- name: Identifier Literal Multiple Underscores
|
|
code: ::my_long_name
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: my_long_name
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: my_long_name
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: my_long_name
|
|
- name: Identifier Literal With Numbers
|
|
code: ::var123
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: var123
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: var123
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: var123
|
|
- name: Identifier Leading Whitespace
|
|
code: ' hello'
|
|
tokens:
|
|
- type: identifier
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: hello
|
|
stack_final:
|
|
- type: identifier
|
|
value: hello
|
|
- name: Identifier Trailing Whitespace
|
|
code: 'hello '
|
|
tokens:
|
|
- type: identifier
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: hello
|
|
stack_final:
|
|
- type: identifier
|
|
value: hello
|
|
- name: Identifier Both Whitespace
|
|
code: ' hello '
|
|
tokens:
|
|
- type: identifier
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: hello
|
|
stack_final:
|
|
- type: identifier
|
|
value: hello
|
|
- name: Identifier Tab Before
|
|
code: "\thello"
|
|
tokens:
|
|
- type: identifier
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: hello
|
|
stack_final:
|
|
- type: identifier
|
|
value: hello
|
|
- name: Identifier Literal Leading Whitespace
|
|
code: ' ::hello'
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: hello
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: hello
|
|
- name: Identifier Literal Trailing Whitespace
|
|
code: '::hello '
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: hello
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: hello
|
|
- name: Identifier Literal Both Whitespace
|
|
code: ' ::hello '
|
|
tokens:
|
|
- type: identifier_literal
|
|
value: hello
|
|
operations:
|
|
- function: push
|
|
type: identifier_literal
|
|
value: hello
|
|
stack_final:
|
|
- type: identifier_literal
|
|
value: hello
|
|
- name: Identifier Moderate Length
|
|
code: thisIsAReasonablyLongVariableName
|
|
tokens:
|
|
- type: identifier
|
|
value: thisIsAReasonablyLongVariableName
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: thisIsAReasonablyLongVariableName
|
|
stack_final:
|
|
- type: identifier
|
|
value: thisIsAReasonablyLongVariableName
|
|
- name: Identifier Very Long
|
|
code: this_is_a_very_long_identifier_name_that_someone_might_use_for_some_reason
|
|
tokens:
|
|
- type: identifier
|
|
value: this_is_a_very_long_identifier_name_that_someone_might_use_for_some_reason
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: this_is_a_very_long_identifier_name_that_someone_might_use_for_some_reason
|
|
stack_final:
|
|
- type: identifier
|
|
value: this_is_a_very_long_identifier_name_that_someone_might_use_for_some_reason
|
|
- name: Identifier Long With Numbers
|
|
code: variable_with_many_numbers_123_456_789_000
|
|
tokens:
|
|
- type: identifier
|
|
value: variable_with_many_numbers_123_456_789_000
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: variable_with_many_numbers_123_456_789_000
|
|
stack_final:
|
|
- type: identifier
|
|
value: variable_with_many_numbers_123_456_789_000
|
|
- name: Identifier Starting With Number
|
|
code: 123abc
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: cannot start with digit.'
|
|
- name: Identifier With Hash
|
|
code: my#var
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: ''#'' is not allowed in identifiers.'
|
|
- name: Identifier With Dash
|
|
code: my-var
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: ''-'' is not allowed in identifiers.'
|
|
- name: Identifier With Dot
|
|
code: my.var
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: ''.'' is not allowed in identifiers.'
|
|
- name: Identifier With Space
|
|
code: my var
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: whitespace not allowed in identifiers.'
|
|
- name: Identifier With Colon
|
|
code: my:var
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: '':'' is not allowed in identifiers.'
|
|
- name: Identifier Double Colon Inside
|
|
code: my::var
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: ''::'' only allowed as prefix for identifier literals.'
|
|
- name: Identifier With At
|
|
code: '@variable'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: ''@'' is not allowed in identifiers.'
|
|
- name: Identifier With Dollar
|
|
code: $variable
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: ''$'' is not allowed in identifiers.'
|
|
- name: Identifier With Percent
|
|
code: '%variable'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: ''%'' is not allowed in identifiers.'
|
|
- name: Identifier With Brackets
|
|
code: my[var]
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: brackets not allowed in identifiers.'
|
|
- name: Identifier With Braces
|
|
code: my{var}
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: braces not allowed in identifiers.'
|
|
- name: Identifier With Parens
|
|
code: my(var)
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: parentheses not allowed in identifiers.'
|
|
- name: Identifier With Single Quote
|
|
code: my'var
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: quotes not allowed in identifiers.'
|
|
- name: Identifier With Double Quote
|
|
code: my"var
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier: quotes not allowed in identifiers.'
|
|
- name: Identifier Only Numbers
|
|
code: '123'
|
|
tokens:
|
|
- type: error
|
|
value: 'Not an identifier: numeric literal.'
|
|
- name: Identifier Literal Empty
|
|
code: '::'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid identifier literal: empty identifier after ''::''.'
|
|
- name: Identifier Case Lower
|
|
code: variable
|
|
tokens:
|
|
- type: identifier
|
|
value: variable
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: variable
|
|
stack_final:
|
|
- type: identifier
|
|
value: variable
|
|
- name: Identifier Case Upper
|
|
code: VARIABLE
|
|
tokens:
|
|
- type: identifier
|
|
value: VARIABLE
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: VARIABLE
|
|
stack_final:
|
|
- type: identifier
|
|
value: VARIABLE
|
|
- name: Identifier Case Mixed
|
|
code: Variable
|
|
tokens:
|
|
- type: identifier
|
|
value: Variable
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: Variable
|
|
stack_final:
|
|
- type: identifier
|
|
value: Variable
|
|
- name: Identifier Case Camel
|
|
code: variableName
|
|
tokens:
|
|
- type: identifier
|
|
value: variableName
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: variableName
|
|
stack_final:
|
|
- type: identifier
|
|
value: variableName
|
|
- name: Identifier Case Pascal
|
|
code: VariableName
|
|
tokens:
|
|
- type: identifier
|
|
value: VariableName
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: VariableName
|
|
stack_final:
|
|
- type: identifier
|
|
value: VariableName
|
|
- name: Identifier Reserved Word true
|
|
code: 'true'
|
|
tokens:
|
|
- type: identifier
|
|
value: 'true'
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: 'true'
|
|
stack_final:
|
|
- type: identifier
|
|
value: 'true'
|
|
- name: Identifier Reserved Word false
|
|
code: 'false'
|
|
tokens:
|
|
- type: identifier
|
|
value: 'false'
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: 'false'
|
|
stack_final:
|
|
- type: identifier
|
|
value: 'false'
|
|
- name: Identifier Reserved Word if
|
|
code: if
|
|
tokens:
|
|
- type: identifier
|
|
value: if
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: if
|
|
stack_final:
|
|
- type: identifier
|
|
value: if
|
|
- name: Identifier Reserved Word while
|
|
code: while
|
|
tokens:
|
|
- type: identifier
|
|
value: while
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: while
|
|
stack_final:
|
|
- type: identifier
|
|
value: while
|
|
- name: Identifier Reserved Word for
|
|
code: for
|
|
tokens:
|
|
- type: identifier
|
|
value: for
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: for
|
|
stack_final:
|
|
- type: identifier
|
|
value: for
|
|
- name: Identifier Reserved Word match
|
|
code: match
|
|
tokens:
|
|
- type: identifier
|
|
value: match
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: match
|
|
stack_final:
|
|
- type: identifier
|
|
value: match
|
|
- name: Identifier Reserved Word break
|
|
code: break
|
|
tokens:
|
|
- type: identifier
|
|
value: break
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: break
|
|
stack_final:
|
|
- type: identifier
|
|
value: break
|
|
- name: Identifier Reserved Word continue
|
|
code: continue
|
|
tokens:
|
|
- type: identifier
|
|
value: continue
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: continue
|
|
stack_final:
|
|
- type: identifier
|
|
value: continue
|
|
- name: Identifier Reserved Word fn
|
|
code: fn
|
|
tokens:
|
|
- type: identifier
|
|
value: fn
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: fn
|
|
stack_final:
|
|
- type: identifier
|
|
value: fn
|
|
- name: Identifier Reserved Word struct
|
|
code: struct
|
|
tokens:
|
|
- type: identifier
|
|
value: struct
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: struct
|
|
stack_final:
|
|
- type: identifier
|
|
value: struct
|
|
- name: Identifier Reserved Word union
|
|
code: union
|
|
tokens:
|
|
- type: identifier
|
|
value: union
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: union
|
|
stack_final:
|
|
- type: identifier
|
|
value: union
|
|
- name: Identifier Reserved Word enum
|
|
code: enum
|
|
tokens:
|
|
- type: identifier
|
|
value: enum
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: enum
|
|
stack_final:
|
|
- type: identifier
|
|
value: enum
|
|
- name: Identifier Reserved Word trait
|
|
code: trait
|
|
tokens:
|
|
- type: identifier
|
|
value: trait
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: trait
|
|
stack_final:
|
|
- type: identifier
|
|
value: trait
|
|
- name: Identifier Reserved Word impl
|
|
code: impl
|
|
tokens:
|
|
- type: identifier
|
|
value: impl
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: impl
|
|
stack_final:
|
|
- type: identifier
|
|
value: impl
|
|
- name: Identifier Reserved Word inher
|
|
code: inher
|
|
tokens:
|
|
- type: identifier
|
|
value: inher
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: inher
|
|
stack_final:
|
|
- type: identifier
|
|
value: inher
|
|
- name: Identifier Reserved Word dup
|
|
code: dup
|
|
tokens:
|
|
- type: identifier
|
|
value: dup
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: dup
|
|
stack_final:
|
|
- type: identifier
|
|
value: dup
|
|
- name: Identifier Reserved Word drop
|
|
code: drop
|
|
tokens:
|
|
- type: identifier
|
|
value: drop
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: drop
|
|
stack_final:
|
|
- type: identifier
|
|
value: drop
|
|
- name: Identifier Reserved Word swap
|
|
code: swap
|
|
tokens:
|
|
- type: identifier
|
|
value: swap
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: swap
|
|
stack_final:
|
|
- type: identifier
|
|
value: swap
|
|
- name: Identifier Reserved Word over
|
|
code: over
|
|
tokens:
|
|
- type: identifier
|
|
value: over
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: over
|
|
stack_final:
|
|
- type: identifier
|
|
value: over
|
|
- name: Identifier Reserved Word rot
|
|
code: rot
|
|
tokens:
|
|
- type: identifier
|
|
value: rot
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: rot
|
|
stack_final:
|
|
- type: identifier
|
|
value: rot
|
|
- name: Identifier Reserved Word pick
|
|
code: pick
|
|
tokens:
|
|
- type: identifier
|
|
value: pick
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: pick
|
|
stack_final:
|
|
- type: identifier
|
|
value: pick
|
|
- name: Identifier Reserved Word roll
|
|
code: roll
|
|
tokens:
|
|
- type: identifier
|
|
value: roll
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: roll
|
|
stack_final:
|
|
- type: identifier
|
|
value: roll
|
|
- name: Identifier Reserved Word depth
|
|
code: depth
|
|
tokens:
|
|
- type: identifier
|
|
value: depth
|
|
operations:
|
|
- function: push
|
|
type: identifier
|
|
value: depth
|
|
stack_final:
|
|
- type: identifier
|
|
value: depth
|
|
- name: Bool True
|
|
code: 'true'
|
|
tokens:
|
|
- type: bool
|
|
value: true
|
|
operations:
|
|
- function: push
|
|
type: bool
|
|
value: true
|
|
stack_final:
|
|
- type: bool
|
|
value: true
|
|
- name: Bool False
|
|
code: 'false'
|
|
tokens:
|
|
- type: bool
|
|
value: false
|
|
operations:
|
|
- function: push
|
|
type: bool
|
|
value: false
|
|
stack_final:
|
|
- type: bool
|
|
value: false
|
|
- name: Bool True Leading Whitespace
|
|
code: ' true'
|
|
tokens:
|
|
- type: bool
|
|
value: true
|
|
operations:
|
|
- function: push
|
|
type: bool
|
|
value: true
|
|
stack_final:
|
|
- type: bool
|
|
value: true
|
|
- name: Bool True Trailing Whitespace
|
|
code: 'true '
|
|
tokens:
|
|
- type: bool
|
|
value: true
|
|
operations:
|
|
- function: push
|
|
type: bool
|
|
value: true
|
|
stack_final:
|
|
- type: bool
|
|
value: true
|
|
- name: Bool True Both Whitespace
|
|
code: ' true '
|
|
tokens:
|
|
- type: bool
|
|
value: true
|
|
operations:
|
|
- function: push
|
|
type: bool
|
|
value: true
|
|
stack_final:
|
|
- type: bool
|
|
value: true
|
|
- name: Bool True Tab Before
|
|
code: "\ttrue"
|
|
tokens:
|
|
- type: bool
|
|
value: true
|
|
operations:
|
|
- function: push
|
|
type: bool
|
|
value: true
|
|
stack_final:
|
|
- type: bool
|
|
value: true
|
|
- name: Bool False Leading Whitespace
|
|
code: ' false'
|
|
tokens:
|
|
- type: bool
|
|
value: false
|
|
operations:
|
|
- function: push
|
|
type: bool
|
|
value: false
|
|
stack_final:
|
|
- type: bool
|
|
value: false
|
|
- name: Bool False Trailing Whitespace
|
|
code: 'false '
|
|
tokens:
|
|
- type: bool
|
|
value: false
|
|
operations:
|
|
- function: push
|
|
type: bool
|
|
value: false
|
|
stack_final:
|
|
- type: bool
|
|
value: false
|
|
- name: Bool False Both Whitespace
|
|
code: ' false '
|
|
tokens:
|
|
- type: bool
|
|
value: false
|
|
operations:
|
|
- function: push
|
|
type: bool
|
|
value: false
|
|
stack_final:
|
|
- type: bool
|
|
value: false
|
|
- name: Bool False Tab Before
|
|
code: "\tfalse"
|
|
tokens:
|
|
- type: bool
|
|
value: false
|
|
operations:
|
|
- function: push
|
|
type: bool
|
|
value: false
|
|
stack_final:
|
|
- type: bool
|
|
value: false
|
|
- name: Bool True Capitalized
|
|
code: 'True'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid boolean: ''True'' is not a boolean literal (use lowercase ''true'').'
|
|
- name: Bool False Capitalized
|
|
code: 'False'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid boolean: ''False'' is not a boolean literal (use lowercase ''false'').'
|
|
- name: Bool True All Caps
|
|
code: 'TRUE'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid boolean: ''TRUE'' is not a boolean literal (use lowercase ''true'').'
|
|
- name: Bool False All Caps
|
|
code: 'FALSE'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid boolean: ''FALSE'' is not a boolean literal (use lowercase ''false'').'
|
|
- name: Bool True Mixed Case
|
|
code: tRuE
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid boolean: ''tRuE'' is not a boolean literal (use lowercase ''true'').'
|
|
- name: Bool False Mixed Case
|
|
code: fAlSe
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid boolean: ''fAlSe'' is not a boolean literal (use lowercase ''false'').'
|
|
- name: Bool Numeric 1
|
|
code: '1'
|
|
tokens:
|
|
- type: error
|
|
value: 'Not a boolean: numeric literal.'
|
|
- name: Bool Numeric 0
|
|
code: '0'
|
|
tokens:
|
|
- type: error
|
|
value: 'Not a boolean: numeric literal.'
|
|
- name: Bool String True
|
|
code: '"true"'
|
|
tokens:
|
|
- type: error
|
|
value: 'Not a boolean: string literal.'
|
|
- name: Bool String False
|
|
code: '"false"'
|
|
tokens:
|
|
- type: error
|
|
value: 'Not a boolean: string literal.'
|
|
- name: Bool Yes
|
|
code: 'yes'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid boolean: ''yes'' is not a boolean literal.'
|
|
- name: Bool No
|
|
code: 'no'
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid boolean: ''no'' is not a boolean literal.'
|
|
- name: Bool Typo Ture
|
|
code: ture
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid boolean: ''ture'' is not a boolean literal.'
|
|
- name: Bool Typo Flase
|
|
code: flase
|
|
tokens:
|
|
- type: error
|
|
value: 'Invalid boolean: ''flase'' is not a boolean literal.'
|
|
- name: Bool Multiple True False
|
|
code: true false
|
|
tokens:
|
|
- type: bool
|
|
value: true
|
|
- type: bool
|
|
value: false
|
|
operations:
|
|
- function: push
|
|
type: bool
|
|
value: true
|
|
- function: push
|
|
type: bool
|
|
value: false
|
|
stack_final:
|
|
- type: bool
|
|
value: true
|
|
- type: bool
|
|
value: false
|
|
- name: Bool Multiple Same
|
|
code: true true
|
|
tokens:
|
|
- type: bool
|
|
value: true
|
|
- type: bool
|
|
value: true
|
|
operations:
|
|
- function: push
|
|
type: bool
|
|
value: true
|
|
- function: push
|
|
type: bool
|
|
value: true
|
|
stack_final:
|
|
- type: bool
|
|
value: true
|
|
- type: bool
|
|
value: true
|
|
- name: Bool Three Values
|
|
code: true false true
|
|
tokens:
|
|
- type: bool
|
|
value: true
|
|
- type: bool
|
|
value: false
|
|
- type: bool
|
|
value: true
|
|
operations:
|
|
- function: push
|
|
type: bool
|
|
value: true
|
|
- function: push
|
|
type: bool
|
|
value: false
|
|
- function: push
|
|
type: bool
|
|
value: true
|
|
stack_final:
|
|
- type: bool
|
|
value: true
|
|
- type: bool
|
|
value: false
|
|
- type: bool
|
|
value: true
|