| OLD | NEW |
| 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, 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 library fasta.source_library_builder; | 5 library fasta.source_library_builder; |
| 6 | 6 |
| 7 import 'package:kernel/ast.dart' show | 7 import 'package:kernel/ast.dart' show |
| 8 AsyncMarker, | 8 AsyncMarker, |
| 9 ProcedureKind; | 9 ProcedureKind; |
| 10 | 10 |
| 11 import '../combinator.dart' show | 11 import '../combinator.dart' show |
| 12 Combinator; | 12 Combinator; |
| 13 | 13 |
| 14 import '../errors.dart' show | 14 import '../errors.dart' show |
| 15 inputError, | 15 inputError, |
| 16 internalError; | 16 internalError; |
| 17 | 17 |
| 18 import '../import.dart' show | 18 import '../import.dart' show |
| 19 Import; | 19 Import; |
| 20 | 20 |
| 21 import 'source_loader.dart' show | 21 import 'source_loader.dart' show |
| 22 SourceLoader; | 22 SourceLoader; |
| 23 | 23 |
| 24 import '../builder/scope.dart' show | 24 import '../builder/scope.dart' show |
| 25 Scope; | 25 Scope; |
| 26 | 26 |
| 27 import '../builder/builder.dart' show | 27 import '../builder/builder.dart' show |
| 28 Builder, | 28 Builder, |
| 29 ClassBuilder, | |
| 30 ConstructorReferenceBuilder, | 29 ConstructorReferenceBuilder, |
| 31 EnumBuilder, | |
| 32 FieldBuilder, | |
| 33 FormalParameterBuilder, | 30 FormalParameterBuilder, |
| 34 FunctionTypeAliasBuilder, | |
| 35 LibraryBuilder, | 31 LibraryBuilder, |
| 36 MemberBuilder, | 32 MemberBuilder, |
| 37 MetadataBuilder, | 33 MetadataBuilder, |
| 38 NamedMixinApplicationBuilder, | |
| 39 PrefixBuilder, | 34 PrefixBuilder, |
| 40 ProcedureBuilder, | |
| 41 TypeBuilder, | 35 TypeBuilder, |
| 42 TypeDeclarationBuilder, | 36 TypeDeclarationBuilder, |
| 43 TypeVariableBuilder, | 37 TypeVariableBuilder, |
| 44 Unhandled; | 38 Unhandled; |
| 45 | 39 |
| 46 abstract class SourceLibraryBuilder<T extends TypeBuilder, R> | 40 abstract class SourceLibraryBuilder<T extends TypeBuilder, R> |
| 47 extends LibraryBuilder<T, R> { | 41 extends LibraryBuilder<T, R> { |
| 48 final SourceLoader loader; | 42 final SourceLoader loader; |
| 49 | 43 |
| 50 final DeclarationBuilder<T> libraryDeclaration = | 44 final DeclarationBuilder<T> libraryDeclaration = |
| (...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 154 resolvedUri = uri.resolve(path); | 148 resolvedUri = uri.resolve(path); |
| 155 newFileUri = fileUri.resolve(path); | 149 newFileUri = fileUri.resolve(path); |
| 156 } | 150 } |
| 157 parts.add(loader.read(resolvedUri, newFileUri)); | 151 parts.add(loader.read(resolvedUri, newFileUri)); |
| 158 } | 152 } |
| 159 | 153 |
| 160 void addPartOf(List<MetadataBuilder> metadata, String name) { | 154 void addPartOf(List<MetadataBuilder> metadata, String name) { |
| 161 partOf = name; | 155 partOf = name; |
| 162 } | 156 } |
| 163 | 157 |
| 164 ClassBuilder addClass(List<MetadataBuilder> metadata, | 158 void addClass(List<MetadataBuilder> metadata, |
| 165 int modifiers, String name, | 159 int modifiers, String name, |
| 166 List<TypeVariableBuilder> typeVariables, T supertype, | 160 List<TypeVariableBuilder> typeVariables, T supertype, |
| 167 List<T> interfaces, int charOffset); | 161 List<T> interfaces, int charOffset); |
| 168 | 162 |
| 169 NamedMixinApplicationBuilder addNamedMixinApplication( | 163 void addNamedMixinApplication( |
| 170 List<MetadataBuilder> metadata, String name, | 164 List<MetadataBuilder> metadata, String name, |
| 171 List<TypeVariableBuilder> typeVariables, int modifiers, | 165 List<TypeVariableBuilder> typeVariables, int modifiers, |
| 172 T mixinApplication, List<T> interfaces, int charOffset); | 166 T mixinApplication, List<T> interfaces, int charOffset); |
| 173 | 167 |
| 174 FieldBuilder addField(List<MetadataBuilder> metadata, | 168 void addField(List<MetadataBuilder> metadata, |
| 175 int modifiers, T type, String name, int charOffset); | 169 int modifiers, T type, String name, int charOffset); |
| 176 | 170 |
| 177 void addFields(List<MetadataBuilder> metadata, int modifiers, | 171 void addFields(List<MetadataBuilder> metadata, int modifiers, |
| 178 T type, List<String> names) { | 172 T type, List<String> names) { |
| 179 for (String name in names) { | 173 for (String name in names) { |
| 180 // TODO(ahe): Get charOffset of name. | 174 // TODO(ahe): Get charOffset of name. |
| 181 addField(metadata, modifiers, type, name, -1); | 175 addField(metadata, modifiers, type, name, -1); |
| 182 } | 176 } |
| 183 } | 177 } |
| 184 | 178 |
| 185 ProcedureBuilder addProcedure(List<MetadataBuilder> metadata, | 179 void addProcedure(List<MetadataBuilder> metadata, |
| 186 int modifiers, T returnType, String name, | 180 int modifiers, T returnType, String name, |
| 187 List<TypeVariableBuilder> typeVariables, | 181 List<TypeVariableBuilder> typeVariables, |
| 188 List<FormalParameterBuilder> formals, AsyncMarker asyncModifier, | 182 List<FormalParameterBuilder> formals, AsyncMarker asyncModifier, |
| 189 ProcedureKind kind, int charOffset); | 183 ProcedureKind kind, int charOffset); |
| 190 | 184 |
| 191 EnumBuilder addEnum(List<MetadataBuilder> metadata, String name, | 185 void addEnum(List<MetadataBuilder> metadata, String name, |
| 192 List<String> constants, int charOffset); | 186 List<String> constants, int charOffset); |
| 193 | 187 |
| 194 FunctionTypeAliasBuilder addFunctionTypeAlias(List<MetadataBuilder> metadata, | 188 void addFunctionTypeAlias(List<MetadataBuilder> metadata, |
| 195 T returnType, String name, | 189 T returnType, String name, |
| 196 List<TypeVariableBuilder> typeVariables, | 190 List<TypeVariableBuilder> typeVariables, |
| 197 List<FormalParameterBuilder> formals, int charOffset); | 191 List<FormalParameterBuilder> formals, int charOffset); |
| 198 | 192 |
| 199 void addFactoryMethod(List<MetadataBuilder> metadata, | 193 void addFactoryMethod(List<MetadataBuilder> metadata, |
| 200 ConstructorReferenceBuilder name, List<FormalParameterBuilder> formals, | 194 ConstructorReferenceBuilder name, List<FormalParameterBuilder> formals, |
| 201 AsyncMarker asyncModifier, ConstructorReferenceBuilder redirectionTarget, | 195 AsyncMarker asyncModifier, ConstructorReferenceBuilder redirectionTarget, |
| 202 int charOffset); | 196 int charOffset); |
| 203 | 197 |
| 204 FormalParameterBuilder addFormalParameter( | 198 FormalParameterBuilder addFormalParameter( |
| (...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 418 // parent declaration. | 412 // parent declaration. |
| 419 parent.addType(type); | 413 parent.addType(type); |
| 420 } else { | 414 } else { |
| 421 type.bind(builder); | 415 type.bind(builder); |
| 422 } | 416 } |
| 423 } | 417 } |
| 424 } | 418 } |
| 425 types.clear(); | 419 types.clear(); |
| 426 } | 420 } |
| 427 } | 421 } |
| OLD | NEW |