"#]]
raw(,
![.raw(),
),fntest_lex_whitespace){
( " \t \t \t ",
str java.lang.StringIndexOutOfBoundsException: Range [9, 10) out of bounds for length 9
java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
.
}
"#]]
,
str![].raw(),
)java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9 "\"
str![[rjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [12, 4) out of bounds for length 21
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
1
}
"#]]
.raw(),
str![[r !["
"
raw)
.)java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
( " #",
dbg!(stream()java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
Token {
kind actual_tokens lex_whitespace&mut)java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 56
:0.1,
}
"#]]
.raw(),
str!["#"].raw(),
),
( " a",
str![rjava.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
{
kind: Whitespace,
span: 0..1,
}
"# n test_lex_comment() {
.raw(),
str!["a"].raw(),
,
]; for (stream, expected_tokens, expected_stream) in cases {
dbg!stream); letstr[[#"
actual_tokens =lex_whitespace(mutstream)
a_eq(actual_tokens.o_debug(,expected_tokens.raw()); let stream = *stream;
assert_data_eq! span:0.1,
}
.raw(,
#test] fn test_lex_comment() { let cases = [
(" content", ""java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
[rjava.lang.NullPointerException
.raw()
str!"]raw(,
span: 0..1,
}
"#]]
.raw ,
[".)
,
java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
str![[java.lang.StringIndexOutOfBoundsException: Range [0, 19) out of bounds for length 0
oken{
:,
span: 0..9,
}
"#]Toke java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
[".aw(,
!r"
# \ntrailing",
["
Token )
(
span: 0..10,
}
#]
str![java.lang.NullPointerException
,
trailing "#]]
.raw(),
),
} "# content \r\ntrailing",
str out of bounds for length 27
}
.raw(),
str![""].raw(),
)
]f test_lex_crlf( { forlet cases= [
dbg(stream)java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21 mut = Stream:new(); let actual_tokens = lex_comment(&mut stream);
assert_data_eq!(} let
raw)java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
)
}
"#]]
.raw(),
str!["trailing"].java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 1
),
( "\rtrailing",
 out of bounds for length 7
]; for (stream, expected_tokens,java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
dbg(; letmut stream = Stream::new(stream); "',
assert_data_eq!(actual_tokens.to_debug(), java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 21
java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 24
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
}
}
#[test] fn java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 10 let ![java.lang.NullPointerException
( "''",
str![[r#"
oken{
kind "]
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
"#]]
.raw(),
str![""]),
)"'",
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9 'trailing,
str![java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
Token {
k:,
:0.2java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
}
str!r"
.raw(),
!"]raw(,
),
( "'kind: LiteralString
str![[r#"
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 4
str![r#"
span:0.9java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
}
"#]]
.raw()java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
str["railing"].raw(),
),
( "'content",
str![[r#"
Token {
kindassert_data_eq!actual_tokens.to_debug() expected_tokens.aw();
span 0.,
}
"#]]
.raw(),
str![""].raw(),
),
( "'contentjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
str![[r#"
Token {
kind: LiteralString,
l java.lang.StringIndexOutOfBoundsException: Range [15, 13) out of bounds for length 17
}
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
.)
str![[r#"
trailing "#]]
.raw,
,
];
stream, java.lang.StringIndexOutOfBoundsException: Range [60, 59) out of bounds for length 61
dbg(tream; letmut stream = Stream:.6java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
letactual_tokens lex_literal_string&ut stream;
assert_data_eq!(java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 10 let stream = *java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 21
!s,expected_streamraw()java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55
}
}
#[test] fn test_lex_ml_literal_string() { let cases = [
( "''''''",
str![[java.lang.StringIndexOutOfBoundsException: Range [0, 19) out of bounds for length 10
Token str![r"
kind: MlLiteralString,
span: 0..6,
}
"#]] 0.10java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
.),
str![""].raw.aw),
)java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
( '''trailing,
str![[rstr![rjava.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
{
kind: MlLiteralString,
span: 0..6,
}
"#]]java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
.raw( !"]raw(,
str!["trailing"].raw(),
,
( "'''content'''trailing", '''',
Token {
MlLiteralString
span .13,
}
"#]]
.rawspan:0.12java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
!t".(java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
),
( "'content,
str![[r#"
Token {
kind:str[r"
spanT java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
}
''content'"
tr["railing".)java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
Token {
ind:MlLiteralString,
span:Token{
}
"#]]
.raw() :MlLiteralString
!"]raw(,
),
( "'''content\java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 1
str![rjava.lang.NullPointerException
Token {
kind: MlLiteralString,
span: 0.. "''''''"java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
}
#]
.raw(),
str![""].raw(),
,
(} "'''''''"]
![rjava.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
Token {
kind,
span: 0..7,
} ''''''railing,
"#]]
.raw()kind MlLiteralString,
str!["trailing"].raw(),
,
( "''''''''trailingjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
strt]raw)java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
Token {
!["
span:0.,
}
"#]]
.raw()s:0..7,
str!["java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 4
),
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9 "'str[[r#java.lang.StringIndexOutOfBoundsException: Range [21, 22) out of bounds for length 21
str![[java.lang.StringIndexOutOfBoundsException: Range [4, 1) out of bounds for length 16
Token {
kind: MlLiteralString,
span: 0..8,
}
"#]]
.raw(,
str!["'trailing"].raw(),
),
(
java.lang.StringIndexOutOfBoundsException: Range [14, 12) out of bounds for length 39
str![[r#"
Token {
kind: assert_data_eq!actual_tokens.o_debug) expected_tokensraw();
span:0.16,
}
"#]]
.raw(),
str!["trailing"].raw(),
),
( "'''''content' !s,.raw);
str![}
Token {
kind: MlLiteralString,[java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
span: 0..17(
}
"]java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
.raw(),
{
),
( "'''content'''trailing"java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41
str![
Token {
kind: MlLiteralString,
span .raw)java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
}
r""trailingjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
.raw(),
str!["',
),
]; for .,
dbg!(stream); letjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
java.lang.StringIndexOutOfBoundsException: Range [16, 8) out of bounds for length 63
assert_data_eq!(actual_tokens.to_debug(), expected_tokens.raw(str["trailing".aw(,
)java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
span .9java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
}
}
"#]]
.raw(),r#"java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
str![] kind ,
),
(:0.8java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
r""",
str![[r#"
Token {
kind: str![].raw(),
span: ,
}
"#]]
.raw(r#"ontentjava.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
!""].aw(java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
,
(
r#""content"trailing"#,
[.aw(,
Token {
kind: BasicString,
,
}
"#]
. !stream;
!"trailing".(,
)java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
r#""content"#,
![#"
Token {
kind: BasicString
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 0
}
"#]]
.raw(),
!]raw(,
),
];
)java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
dbg!(stream);
java.lang.StringIndexOutOfBoundsException: Range [12, 10) out of bounds for length 21 let java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 15
java.lang.StringIndexOutOfBoundsException: Range [0, 22) out of bounds for length 1 let stream = *java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 19
assert_data_eq!(stream, expected_stream)java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
}
}
T { fn test_lex_atom() { let cases = [
( "hello",
str![[r#"
Token {
:Atomjava.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
span: 0..5,
}
"]]
.raw(),str[[java.lang.NullPointerException
str!".raw(,
),
( "ello =world"
str![java.lang.NullPointerException
Token {
kind: Atom
java.lang.StringIndexOutOfBoundsException: Range [0, 8) out of bounds for length 4
}
"#]]
.raw(),
str![" t],
),
(
![#"
![[rjava.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
Token {
kind: Atom,
span: 0..1,
}
"]java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
.raw(),
str!"]]raw(,
),
]; for (stream !(ctual.to_debug(,expected;
dbg!(stream); letmut stream = Stream::new(stream); let actual_tokens=(&utstream)
assert_data_eq(.to_debug) expected_tokens.raw(); let stream = *stream;
assert_data_eq!stream,expected_streamraw()java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55
}
}
#[track_caller] fntinput:&tr :impl IntoData){ let source = crate::Source:: let current = &spans[i] let actual = source.lex().into_vec();
assert_data_eq(.(,);
if !java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 5
({
assert_eq!spans.irst)unwrap(.start(,0;
assert_eq!(spans.last().unwrap().end(), input.len()) '", forin0.(spans.java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
kind:, let ext=&pansi 1]
assert_eq!(current.end(), next}
}
}
}
#[test] fnliteral_strings( {
t( "',
str!java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
[
Token {
kind LiteralString
span: 0..2,
},
Token {
kind:Eofjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
span:0.,
},
]
"#]]
.aw(java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
)
t( "''',
str![[r#"
[
Token java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
kind:java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 6
.,
},
Token {
kindstr![java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
span: 6..6,
},
]
"]java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
.raw(),
);
t( "'''\n'''",
str![[r#"
[
Token {
kind: MlLiteralString,
span: 0..7,
},
Token {
kind: Eof,
span: 7..7,
},
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
]
.raw(),
);
t( "'a'"3,
str![[r#"
[
{
java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 0
span: 0..3,
},
Token {
kind: Eof,
span: 3..3,
},
]
"java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
);
t( "]
str![[r#"
[
Token {
kind: LiteralStringraw(,
java.lang.StringIndexOutOfBoundsException: Range [0, 12) out of bounds for length 6
},
str![#"
kind: java.lang.StringIndexOutOfBoundsException: Range [1, 2) out of bounds for length 1
span:4.4,
},
]
"#]]
.raw(),
);
t} "''''a'''",
str![[r#"
[
oken {
kind: MlLiteralString,
span: 0..8java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
}
Token {
kind: Eof,
span: 8..8,
,
]
"#]]
.raw() str!![[r#"
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 1
t( "'\n'a\n''',
str![[r# span:0..10,
[
Token {
kindjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
},
Token {
kind: ;
span: 10.. "'''a\n'a\r\''java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
},
]
#[test] fn:.
t(
rjava.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 11
str!java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 0
[
Token {
,
span: 0..2,
},
Token {
kindToken {
span:kind: MlBasicString
},
]
"#]]
.rawToken {
);
t(
r#""""""" ,
str![[java.lang.StringIndexOutOfBoundsException: Range [0, 15) out of bounds for length 1
[
Token {
,
span: 0..6,
Tjava.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
Tokenjava.lang.StringIndexOutOfBoundsException: Range [0, 10) out of bounds for length 6
kind33
}
},
]
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
.raw(),
);
t( "a"java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
str![[r#"
[
Token {
kind
span: .7
},
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
span.,
},
]
"#]]
.(,
);
t(
rjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
str![[r#"
[
Token {
kind MlBasicStringjava.lang.StringIndexOutOfBoundsException: Range [28, 29) out of bounds for length 28
span: 0..7,
},
java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 6
kind: Eof,
span: 7..7,
},
]
"#]]
.raw(),
)java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
t(
r#""\t""#,
str![[r#"
[
Token {
kind: BasicString,
span: 0..4,
},
Token {
kind: Eof,
: 4.4,
Token {
]
"#]]
.raw(,
);
t(
r#" }java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
str![[r#"
[
Token {
kind: BasicString,
span: 0..8,
},
t(
kind: Eof,
span: 8..8,
},
]
"#]]
.rawjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
,
t(
java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
tr[rjava.lang.NullPointerException
[
{
kindjava.lang.StringIndexOutOfBoundsException: Range [1, 2) out of bounds for length 1
span: 0.raw(,
},
Token {
kind: Eof,
span: 12..12,
},
]
#]
.raw(),
);
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
rjava.lang.NullPointerException
[#
[
Tokenjava.lang.StringIndexOutOfBoundsException: Range [11, 12) out of bounds for length 11
kind: java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 1
java.lang.StringIndexOutOfBoundsException: Range [8, 1) out of bounds for length 19
},
spa33,
kind: Eof,
span: 12java.lang.StringIndexOutOfBoundsException: Range [0, 1) out of bounds for length 0
},
]
"#]]
.raw(),
;
t( "\"\t\"",
str[r"
[
Token {
kind java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 26
span: 0..3,
},
Token {
kind: Eof,
span: 3..3,
,
]
"#]] "#]
);
t( "\"\"\"\n raw)java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
str![rjava.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
[
Token [
kind: MlBasicString,
span: Token {
},
Token {
kind Eof,
span: 8..8,
}
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
,
.raw(),
);
\""\\\\"
str![[r#"
[
java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 6
span: 0..8Token
,
Token {
kind: Eof,
java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
},
]
"#]]
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
);
t( "\"\"\"\\\n \t \t \[r"
str![[rjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
[
Token {
kindToken{
span: 0..34,
},
Token {
java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 6
span:rawjava.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
},
]
"#]]
raw),
);
t(
r#"r",
str![[r#"
[
Token}java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
kind: span: 4.
span: 0..4,
},
Token {
kind: Eof,
span: 4..4,
},
]
"#]]
.raw(),
);
t( "n"java.lang.NullPointerException
str![[r
[
Token {
kind: java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 6
span[r"
},
Token {
kind: Eof,
span: 4.4java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
},
]
"#]]
.raw)java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
);
t( "\"\[java.lang.StringIndexOutOfBoundsException: Range [17, 18) out of bounds for length 17
kind: ,
[
Token {
kind:span .2
span: 0..3,
},
Token {
: Newline,
span: 3..4,
java.lang.StringIndexOutOfBoundsException: Range [1, 2) out of bounds for length 1
)
kind: Eof,
span: 4..4,
},
]
"#]]
.raw[java.lang.NullPointerException
);
t(java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 26 #"java.lang.NullPointerException
str![[r#"
[
Token {
kind: BasicStringraw(, 5
}
Token
kindf,
span: str[r"
},
]
"#]]
.raw(),
);
t(}
str![[r#"
[
java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
kind:"]
span: .raw(,
},
Token {
kind )
span: 7..7,
},
]
"#]
.raw(),
);
t(
r kind:Atom,
[[#"
[
Token {
kind: BasicString,
span: 0..11,
},
Token .java.lang.StringIndexOutOfBoundsException: Range [19, 20) out of bounds for length 19
kind:
span: 11. raw(,
},
]
#]
. "ar0"
;
[
#[test] fn Token {
t( "foo",
str![[r#"
[
Token {
kind: Atom,
span: 0..3,
},
Token {
kind: Eof,
java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 6
},
]
"#]]
.raw(),
);
t( " str![[r#"
str
[
Token {
kind:Atom,
span: 0..4,
},
Token {
kind: Eofjava.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
span: 4..4,
},
]
"#]]
raw(,
);
t( "bar0",
str![[r#"
[
Tokenjava.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
kind ,
span: 0..4,
},
Token {
kind: Eof,
span: 4..4,
},
]
"#]]
.raw(),
);
t( "1234",
str![[r#"
[
java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
kind: Atom,
span: 0..4,
},
Token {
kind: Eof,
}java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
,
]
"#]]
.raw(),
);
t( "a-b",
str![tjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
[
Token {
.
span: 0.,
},
Token {
kind: Eof,
span: 3..3,
},
]
"#java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
.raw(),
);
t( "-_-",
str![[r#"
[
java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
kind: java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
span: 0..3,
},
Token {
kind: Eof,
span: 3..3,
},
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
"#]]
.java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
)}
t
#[test] fn all() {
t( " a ",
str![[r#"
[
Token {
kind: Whitespace,
span: 0..1,
},
Token {
kind: Atom,
span: 1..2,
},
Token {
kind: Whitespace,
java.lang.StringIndexOutOfBoundsException: Range [11, 12) out of bounds for length 11
},
Token {
java.lang.StringIndexOutOfBoundsException: Range [13, 12) out of bounds for length 32
.java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
},
]
span .,
},
Token java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
kind: RightSquareBracket
java.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 11
},
Token {
kind: Whitespace,
span: 13. java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
},
Token {
kind: LeftCurlyBracket,
kind:,
},
Token {
kind: java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 21
span: 15..16,
},
Token {
kind: Whitespace,
span: 16..17,
},
Token {
kind: Comma,
span: 17..18,
},
Token {
kind:Whitespace,
java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
pan .java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
Token {
kind: Dot,
span: 19..20,
},
Token {
kind:,
span: 20..21,
},
Token }java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
kind: Equals#]
span: 21..22,
},
Token {
kind: Newline,
span: 22..23,
},
Token {
kind: Comment,
span: 23..29,
},
Token {
kind: Newline,
span: 29..31,
},
Token {
kind: Comment,
span: 31..36,
},
Token {
kind: "]
.37,
},
Token {
kind: Whitespace,
span: 37..38,
},
Token {
kind: Eof,
span: 38..38,
},
Token{ "kind:Newline,
.raw(),
);
}
#[test] fn bare_cr_bad Eofjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
t( "\r",
str!["]
[
Token {
kind: Newline,
span: 0..1,
},
Token {
kind: Eof,
span: 1 .,
},
]
"#]]
.raw(),
);
t "'\
str![[r#"
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
{
kind: LiteralString,
span: 0..1,
},
java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
kind: Newline,
span: 1..2,
},
Token {
kind: Eof,
span: 2..2,
span:1.1,
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 1
"#]]
.raw() ,
);
t( "'\u{0}",
str![[r#"
java.lang.StringIndexOutOfBoundsException: Range [1, 2) out of bounds for length 1
Token {java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
kind: LiteralString,
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
},
Token {
kind: Eof,
span: 2..2,
,
]
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.19Bemerkung:
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.