| 2158 | |
| 2159 | |
| 2160 | function do_jslint() { |
| 2161 | var name, value; |
| 2162 | while (next_token.id === '(string)' || next_token.identifier) { |
| 2163 | name = next_token.string; |
| 2164 | if (!allowed_option[name]) { |
| 2165 | stop('unexpected_a'); |
| 2166 | } |
| 2167 | advance(); |
| 2168 | if (next_token.id !== ':') { |
| 2169 | stop('expected_a_b', next_token, ':', artifact()); |
| 2170 | } |
| 2171 | advance(':'); |
| 2172 | if (typeof allowed_option[name] === 'number') { |
| 2173 | value = next_token.number; |
| 2174 | if (value > allowed_option[name] || value <= 0 || |
| 2175 | Math.floor(value) !== value) { |
| 2176 | stop('expected_small_a'); |
| 2177 | } |
| 2178 | option[name] = value; |
| 2179 | } else { |
| 2180 | if (next_token.id === 'true') { |
| 2181 | option[name] = true; |
| 2182 | } else if (next_token.id === 'false') { |
| 2183 | option[name] = false; |
| 2184 | } else { |
| 2185 | stop('unexpected_a'); |
| 2186 | } |
| 2187 | } |
| 2188 | advance(); |
| 2189 | if (next_token.id === ',') { |
| 2190 | advance(','); |
| 2191 | } |
| 2192 | } |
| 2193 | assume(); |
| 2194 | } |
| 2195 | |
| 2196 | |
| 2197 | function do_properties() { |