()
| 97 | } |
| 98 | |
| 99 | func (dec *Decoder) assertTrue() error { |
| 100 | i := 0 |
| 101 | for ; dec.cursor < dec.length || dec.read(); dec.cursor++ { |
| 102 | switch i { |
| 103 | case 0: |
| 104 | if dec.data[dec.cursor] != 'r' { |
| 105 | return dec.raiseInvalidJSONErr(dec.cursor) |
| 106 | } |
| 107 | case 1: |
| 108 | if dec.data[dec.cursor] != 'u' { |
| 109 | return dec.raiseInvalidJSONErr(dec.cursor) |
| 110 | } |
| 111 | case 2: |
| 112 | if dec.data[dec.cursor] != 'e' { |
| 113 | return dec.raiseInvalidJSONErr(dec.cursor) |
| 114 | } |
| 115 | case 3: |
| 116 | switch dec.data[dec.cursor] { |
| 117 | case ' ', '\b', '\t', '\n', ',', ']', '}': |
| 118 | // dec.cursor-- |
| 119 | return nil |
| 120 | default: |
| 121 | return dec.raiseInvalidJSONErr(dec.cursor) |
| 122 | } |
| 123 | } |
| 124 | i++ |
| 125 | } |
| 126 | if i == 3 { |
| 127 | return nil |
| 128 | } |
| 129 | return dec.raiseInvalidJSONErr(dec.cursor) |
| 130 | } |
| 131 | |
| 132 | func (dec *Decoder) assertNull() error { |
| 133 | i := 0 |
no test coverage detected