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

Side by Side Diff: pkg/compiler/lib/src/elements/modelx.dart

Issue 2012163003: Fix several element properties in serialization. (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: dartfmt Created 4 years, 6 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 unified diff | Download patch
« no previous file with comments | « pkg/compiler/lib/src/elements/common.dart ('k') | pkg/compiler/lib/src/library_loader.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 elements.modelx; 5 library elements.modelx;
6 6
7 import '../common.dart'; 7 import '../common.dart';
8 import '../common/resolution.dart' show Resolution, ParsingContext; 8 import '../common/resolution.dart' show Resolution, ParsingContext;
9 import '../compiler.dart' show Compiler; 9 import '../compiler.dart' show Compiler;
10 import '../constants/constant_constructors.dart'; 10 import '../constants/constant_constructors.dart';
(...skipping 1827 matching lines...) Expand 10 before | Expand all | Expand 10 after
1838 1838
1839 MemberElement get memberContext => enclosingElement; 1839 MemberElement get memberContext => enclosingElement;
1840 1840
1841 bool get isLocal => false; 1841 bool get isLocal => false;
1842 1842
1843 bool get isMalformed => true; 1843 bool get isMalformed => true;
1844 1844
1845 DynamicType get type => const DynamicType(); 1845 DynamicType get type => const DynamicType();
1846 } 1846 }
1847 1847
1848 class AbstractFieldElementX extends ElementX implements AbstractFieldElement { 1848 class AbstractFieldElementX extends ElementX
1849 with AbstractFieldElementCommon
1850 implements AbstractFieldElement {
1849 GetterElementX getter; 1851 GetterElementX getter;
1850 SetterElementX setter; 1852 SetterElementX setter;
1851 1853
1852 AbstractFieldElementX(String name, Element enclosing) 1854 AbstractFieldElementX(String name, Element enclosing)
1853 : super(name, ElementKind.ABSTRACT_FIELD, enclosing); 1855 : super(name, ElementKind.ABSTRACT_FIELD, enclosing);
1854 1856
1855 DartType computeType(Compiler compiler) { 1857 DartType computeType(Compiler compiler) {
1856 throw "internal error: AbstractFieldElement has no type"; 1858 throw "internal error: AbstractFieldElement has no type";
1857 } 1859 }
1858 1860
(...skipping 22 matching lines...) Expand all
1881 // The resolver ensures that the flags match (ignoring abstract). 1883 // The resolver ensures that the flags match (ignoring abstract).
1882 if (getter != null) { 1884 if (getter != null) {
1883 return new Modifiers.withFlags(getter.modifiers.nodes, 1885 return new Modifiers.withFlags(getter.modifiers.nodes,
1884 getter.modifiers.flags | Modifiers.FLAG_ABSTRACT); 1886 getter.modifiers.flags | Modifiers.FLAG_ABSTRACT);
1885 } else { 1887 } else {
1886 return new Modifiers.withFlags(setter.modifiers.nodes, 1888 return new Modifiers.withFlags(setter.modifiers.nodes,
1887 setter.modifiers.flags | Modifiers.FLAG_ABSTRACT); 1889 setter.modifiers.flags | Modifiers.FLAG_ABSTRACT);
1888 } 1890 }
1889 } 1891 }
1890 1892
1891 bool get isInstanceMember {
1892 return isClassMember && !isStatic;
1893 }
1894
1895 accept(ElementVisitor visitor, arg) { 1893 accept(ElementVisitor visitor, arg) {
1896 return visitor.visitAbstractFieldElement(this, arg); 1894 return visitor.visitAbstractFieldElement(this, arg);
1897 } 1895 }
1898
1899 bool get isAbstract {
1900 return getter != null && getter.isAbstract ||
1901 setter != null && setter.isAbstract;
1902 }
1903 } 1896 }
1904 1897
1905 // TODO(johnniwinther): [FunctionSignature] should be merged with 1898 // TODO(johnniwinther): [FunctionSignature] should be merged with
1906 // [FunctionType]. 1899 // [FunctionType].
1907 // TODO(karlklose): all these lists should have element type [FormalElement]. 1900 // TODO(karlklose): all these lists should have element type [FormalElement].
1908 class FunctionSignatureX extends FunctionSignatureCommon 1901 class FunctionSignatureX extends FunctionSignatureCommon
1909 implements FunctionSignature { 1902 implements FunctionSignature {
1910 final List<DartType> typeVariables; 1903 final List<DartType> typeVariables;
1911 final List<Element> requiredParameters; 1904 final List<Element> requiredParameters;
1912 final List<Element> optionalParameters; 1905 final List<Element> optionalParameters;
(...skipping 1380 matching lines...) Expand 10 before | Expand all | Expand 10 after
3293 body = node.asFunctionExpression().body; 3286 body = node.asFunctionExpression().body;
3294 } 3287 }
3295 return new ParsedResolvedAst( 3288 return new ParsedResolvedAst(
3296 declaration, 3289 declaration,
3297 node, 3290 node,
3298 body, 3291 body,
3299 definingElement.treeElements, 3292 definingElement.treeElements,
3300 definingElement.compilationUnit.script.resourceUri); 3293 definingElement.compilationUnit.script.resourceUri);
3301 } 3294 }
3302 } 3295 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/elements/common.dart ('k') | pkg/compiler/lib/src/library_loader.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698