@@ -102,28 +102,28 @@ public UncompiledStringParser(TextStream reader) {
102
102
public ImmutableArray < StringToken > Parse ( ) {
103
103
List < StringToken > tokens = [ ] ;
104
104
GlyphStyle style = GlyphStyle . Normal ;
105
- while ( _reader . Has ( 0 ) && _reader . Peek ( 0 ) != '\n ' ) {
106
- if ( _reader . Peek ( 0 ) == '〔' ) {
107
- _reader . Next ( ) ;
108
- tokens . Add ( new StringTokenTag ( "nameStart" , [ ] ) ) ;
109
- } else if ( _reader . Peek ( 0 ) == '〕' ) {
110
- _reader . Next ( ) ;
111
- tokens . Add ( new StringTokenTag ( "nameEnd" , [ ] ) ) ;
112
- } else if ( _reader . Peek ( 0 ) == '\\ ' ) {
113
- if ( _reader . Has ( 1 ) && _reader . Peek ( 1 ) is '\\ ' or '〔' or '〕' ) {
114
- _reader . Skip ( 1 ) ;
115
- tokens . Add ( new StringTokenRune ( _reader . NextRune ( ) , style ) ) ;
116
- } else {
117
- tokens . Add ( ParseTag ( ) ) ;
118
- }
105
+ while ( _reader . Has ( 0 ) && _reader . PeekRune ( 0 ) != new Rune ( '\n ' ) ) {
106
+ if ( _reader . PeekRune ( 0 ) == new Rune ( '〔' ) ) {
107
+ _reader . NextRune ( ) ;
108
+ tokens . Add ( new StringTokenTag ( "nameStart" , [ ] ) ) ;
109
+ } else if ( _reader . PeekRune ( 0 ) == new Rune ( '〕' ) ) {
110
+ _reader . NextRune ( ) ;
111
+ tokens . Add ( new StringTokenTag ( "nameEnd" , [ ] ) ) ;
112
+ } else if ( _reader . PeekRune ( 0 ) == new Rune ( '\\ ' ) ) {
113
+ if ( _reader . Has ( 1 ) && ( _reader . PeekRune ( 1 ) == new Rune ( '\\ ' ) || _reader . PeekRune ( 1 ) == new Rune ( '〔' ) || _reader . PeekRune ( 1 ) == new Rune ( '〕' ) ) ) {
114
+ _reader . Skip ( 1 ) ;
115
+ tokens . Add ( new StringTokenRune ( _reader . NextRune ( ) , style ) ) ;
116
+ } else {
117
+ tokens . Add ( ParseTag ( ) ) ;
118
+ }
119
119
} else if ( ParseUtils . TrySkip ( _reader , "<i>" ) ) {
120
- style = GlyphStyle . Italic ;
120
+ style = GlyphStyle . Italic ;
121
121
} else if ( ParseUtils . TrySkip ( _reader , "</i>" ) ) {
122
- style = GlyphStyle . Normal ;
122
+ style = GlyphStyle . Normal ;
123
123
} else {
124
- tokens . Add ( new StringTokenRune ( _reader . NextRune ( ) , style ) ) ;
124
+ tokens . Add ( new StringTokenRune ( _reader . NextRune ( ) , style ) ) ;
125
125
}
126
- }
126
+ }
127
127
return [ ..tokens ] ;
128
128
}
129
129
0 commit comments