| Index: pkg/fasta/lib/src/builder/formal_parameter_builder.dart
|
| diff --git a/pkg/fasta/lib/src/builder/formal_parameter_builder.dart b/pkg/fasta/lib/src/builder/formal_parameter_builder.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..ec6bd8f0e438e742f129704de91bd4340b82e028
|
| --- /dev/null
|
| +++ b/pkg/fasta/lib/src/builder/formal_parameter_builder.dart
|
| @@ -0,0 +1,42 @@
|
| +// Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
|
| +// for details. All rights reserved. Use of this source code is governed by a
|
| +// BSD-style license that can be found in the LICENSE file.
|
| +
|
| +library fasta.formal_parameter_builder;
|
| +
|
| +import 'package:dart_parser/src/parser.dart' show
|
| + FormalParameterType;
|
| +
|
| +import 'builder.dart' show
|
| + MetadataBuilder,
|
| + ModifierBuilder,
|
| + TypeBuilder;
|
| +
|
| +abstract class FormalParameterBuilder<T extends TypeBuilder>
|
| + extends ModifierBuilder {
|
| + final List<MetadataBuilder> metadata;
|
| +
|
| + final int modifiers;
|
| +
|
| + final T type;
|
| +
|
| + final String name;
|
| +
|
| + /// True if this parameter is on the form `this.name`.
|
| + final bool hasThis;
|
| +
|
| + FormalParameterType kind = FormalParameterType.REQUIRED;
|
| +
|
| + FormalParameterBuilder(this.metadata, this.modifiers, this.type, this.name,
|
| + this.hasThis);
|
| +
|
| + bool get isRequired => kind.isRequired;
|
| +
|
| + bool get isPositional => kind.isPositional;
|
| +
|
| + bool get isNamed => kind.isNamed;
|
| +
|
| + bool get isOptional => !isRequired;
|
| +
|
| + bool get isLocal => true;
|
| +}
|
|
|