| OLD | NEW |
| 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 // IDL grammar variants. | 5 // IDL grammar variants. |
| 6 final int WEBIDL_SYNTAX = 0; | 6 final int WEBIDL_SYNTAX = 0; |
| 7 final int WEBKIT_SYNTAX = 1; | 7 final int WEBKIT_SYNTAX = 1; |
| 8 final int FREMONTCUT_SYNTAX = 2; | 8 final int FREMONTCUT_SYNTAX = 2; |
| 9 | 9 |
| 10 /** | 10 /** |
| (...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 185 if (v != null) { | 185 if (v != null) { |
| 186 sb.add('=$v'); | 186 sb.add('=$v'); |
| 187 } | 187 } |
| 188 }); | 188 }); |
| 189 return sb.toString(); | 189 return sb.toString(); |
| 190 } | 190 } |
| 191 | 191 |
| 192 } | 192 } |
| 193 | 193 |
| 194 class IDLExtAttrs extends IDLDictNode { | 194 class IDLExtAttrs extends IDLDictNode { |
| 195 IDLExtAttrs([List attrs = const []]) { | 195 IDLExtAttrs([List attrs = const []]) : super() { |
| 196 setMap(attrs); | 196 setMap(attrs); |
| 197 } | 197 } |
| 198 | 198 |
| 199 toString() => '<IDLExtAttrs${formatMap()}>'; | 199 toString() => '<IDLExtAttrs${formatMap()}>'; |
| 200 } | 200 } |
| 201 | 201 |
| 202 class IDLArgument extends IDLNode { | 202 class IDLArgument extends IDLNode { |
| 203 String id; | 203 String id; |
| 204 IDLType type; | 204 IDLType type; |
| 205 bool isOptional; | 205 bool isOptional; |
| 206 bool isIn; | 206 bool isIn; |
| 207 bool hasElipsis; | 207 bool hasElipsis; |
| 208 IDLArgument(String this.id, IDLType this.type, IDLExtAttrs extAttrs, | 208 IDLArgument(String this.id, IDLType this.type, IDLExtAttrs extAttrs, |
| 209 bool this.isOptional, bool this.isIn, bool this.hasElipsis) { | 209 bool this.isOptional, bool this.isIn, bool this.hasElipsis) { |
| 210 setExtAttrs(extAttrs); | 210 setExtAttrs(extAttrs); |
| 211 } | 211 } |
| 212 | 212 |
| 213 toString() => '<IDLArgument $id>'; | 213 toString() => '<IDLArgument $id>'; |
| 214 } | 214 } |
| 215 | 215 |
| 216 class IDLAnnotations extends IDLDictNode { | 216 class IDLAnnotations extends IDLDictNode { |
| 217 IDLAnnotations(List annotations) { | 217 IDLAnnotations(List annotations) : super() { |
| 218 for (var annotation in annotations) { | 218 for (var annotation in annotations) { |
| 219 map[annotation.id] = annotation; | 219 map[annotation.id] = annotation; |
| 220 } | 220 } |
| 221 } | 221 } |
| 222 | 222 |
| 223 toString() => '<IDLAnnotations${formatMap()}>'; | 223 toString() => '<IDLAnnotations${formatMap()}>'; |
| 224 } | 224 } |
| 225 | 225 |
| 226 class IDLAnnotation extends IDLDictNode { | 226 class IDLAnnotation extends IDLDictNode { |
| 227 String id; | 227 String id; |
| 228 IDLAnnotation(String this.id, List args) { | 228 IDLAnnotation(String this.id, List args) : super() { |
| 229 setMap(args); | 229 setMap(args); |
| 230 } | 230 } |
| 231 | 231 |
| 232 toString() => '<IDLAnnotation $id${formatMap()}>'; | 232 toString() => '<IDLAnnotation $id${formatMap()}>'; |
| 233 } | 233 } |
| 234 | 234 |
| 235 class IDLExtAttrFunctionValue extends IDLNode { | 235 class IDLExtAttrFunctionValue extends IDLNode { |
| 236 String name; | 236 String name; |
| 237 List arguments; | 237 List arguments; |
| 238 IDLExtAttrFunctionValue(String this.name, this.arguments); | 238 IDLExtAttrFunctionValue(String this.name, this.arguments); |
| (...skipping 301 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 540 OR([MANY(CHAR(' \t\r\n')), | 540 OR([MANY(CHAR(' \t\r\n')), |
| 541 ['//', MANY0([NOT(CHAR('\r\n')), CHAR()])], | 541 ['//', MANY0([NOT(CHAR('\r\n')), CHAR()])], |
| 542 ['#', MANY0([NOT(CHAR('\r\n')), CHAR()])], | 542 ['#', MANY0([NOT(CHAR('\r\n')), CHAR()])], |
| 543 ['/*', MANY0([NOT('*/'), CHAR()]), '*/']]); | 543 ['/*', MANY0([NOT('*/'), CHAR()]), '*/']]); |
| 544 | 544 |
| 545 // Top level - at least one definition. | 545 // Top level - at least one definition. |
| 546 return MANY(Definition); | 546 return MANY(Definition); |
| 547 | 547 |
| 548 } | 548 } |
| 549 } | 549 } |
| OLD | NEW |