Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(224)

Unified Diff: sdk/lib/_internal/js_runtime/lib/js_mirrors.dart

Issue 1311613005: Add ParameterMirror.isInitializingFormal to dart:mirrors Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « sdk/lib/_internal/js_runtime/lib/js_helper.dart ('k') | sdk/lib/mirrors/mirrors.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sdk/lib/_internal/js_runtime/lib/js_mirrors.dart
diff --git a/sdk/lib/_internal/js_runtime/lib/js_mirrors.dart b/sdk/lib/_internal/js_runtime/lib/js_mirrors.dart
index aa836ca0baa45592736d39b2e0e4c2cee6b2a180..2ce78fc96bc9879660eb336f4e518c64351f23e5 100644
--- a/sdk/lib/_internal/js_runtime/lib/js_mirrors.dart
+++ b/sdk/lib/_internal/js_runtime/lib/js_mirrors.dart
@@ -1624,6 +1624,7 @@ class JsSyntheticSetterParameter implements ParameterMirror {
bool get isFinal => true;
bool get isPrivate => false;
bool get hasDefaultValue => false;
+ bool get isInitializingFormal => false;
InstanceMirror get defaultValue => null;
List<InstanceMirror> get metadata => const [];
SourceLocation get location => throw new UnimplementedError();
@@ -2411,6 +2412,10 @@ class JsMethodMirror extends JsDeclarationMirror implements MethodMirror {
bool isNamed = info.areOptionalParametersNamed;
for (JsParameterMirror parameter in type.parameters) {
var name = info.parameterName(i);
+ bool isInitializingFormal = false;
+ if (isConstructor) {
+ isInitializingFormal = info.isFieldInitializerParameter(i);
+ }
List<int> annotations = info.parameterMetadataAnnotations(i);
var p;
if (i < info.requiredParameterCount) {
@@ -2420,7 +2425,8 @@ class JsMethodMirror extends JsDeclarationMirror implements MethodMirror {
var defaultValue = info.defaultValue(i);
p = new JsParameterMirror(
name, this, parameter._type, metadataList: annotations,
- isOptional: true, isNamed: isNamed, defaultValue: defaultValue);
+ isOptional: true, isNamed: isNamed, defaultValue: defaultValue,
+ isInitializingFormal: isInitializingFormal);
}
formals[i++] = p;
}
@@ -2534,6 +2540,7 @@ class JsParameterMirror extends JsDeclarationMirror implements ParameterMirror {
{this.metadataList: const <int>[],
this.isOptional: false,
this.isNamed: false,
+ this.isInitializingFormal: false,
defaultValue})
: _defaultValue = defaultValue,
super(s(unmangledName));
@@ -2553,6 +2560,8 @@ class JsParameterMirror extends JsDeclarationMirror implements ParameterMirror {
// TODO(ahe): Implement this.
bool get isConst => false;
+ final bool isInitializingFormal;
+
bool get hasDefaultValue => _defaultValue != null;
get defaultValue {
« no previous file with comments | « sdk/lib/_internal/js_runtime/lib/js_helper.dart ('k') | sdk/lib/mirrors/mirrors.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698