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

Side by Side Diff: utils/template/codegen.dart

Issue 11238035: Make isEmpty a getter. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Update status file with co19 issue number. Created 8 years, 1 month 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 | Annotate | Revision Log
« no previous file with comments | « utils/pub/yaml/yaml_map.dart ('k') | utils/tests/pub/test_pub.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) 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 class CGBlock { 5 class CGBlock {
6 int _blockType; // Code type of this block 6 int _blockType; // Code type of this block
7 int _indent; // Number of spaces to prefix for each statement 7 int _indent; // Number of spaces to prefix for each statement
8 bool _inEach; // This block or any currently active blocks is a 8 bool _inEach; // This block or any currently active blocks is a
9 // #each. If so then any element marked with a 9 // #each. If so then any element marked with a
10 // var attribute is repeated therefore the var 10 // var attribute is repeated therefore the var
11 // is a List type instead of an Element type. 11 // is a List type instead of an Element type.
12 String _localName; // optional local name for #each or #with 12 String _localName; // optional local name for #each or #with
13 List<CGStatement> _stmts; 13 List<CGStatement> _stmts;
14 int localIndex; // Local variable index (e.g., e0, e1, etc.) 14 int localIndex; // Local variable index (e.g., e0, e1, etc.)
15 15
16 // Block Types: 16 // Block Types:
17 static const int CONSTRUCTOR = 0; 17 static const int CONSTRUCTOR = 0;
18 static const int EACH = 1; 18 static const int EACH = 1;
19 static const int WITH = 2; 19 static const int WITH = 2;
20 20
21 CGBlock([this._indent = 4, 21 CGBlock([this._indent = 4,
22 this._blockType = CGBlock.CONSTRUCTOR, 22 this._blockType = CGBlock.CONSTRUCTOR,
23 this._inEach = false, 23 this._inEach = false,
24 this._localName = null]) : 24 this._localName = null]) :
25 _stmts = new List<CGStatement>(), localIndex = 0 { 25 _stmts = new List<CGStatement>(), localIndex = 0 {
26 assert(_blockType >= CGBlock.CONSTRUCTOR && _blockType <= CGBlock.WITH); 26 assert(_blockType >= CGBlock.CONSTRUCTOR && _blockType <= CGBlock.WITH);
27 } 27 }
28 28
29 bool get anyStatements => !_stmts.isEmpty(); 29 bool get anyStatements => !_stmts.isEmpty;
30 bool get isConstructor => _blockType == CGBlock.CONSTRUCTOR; 30 bool get isConstructor => _blockType == CGBlock.CONSTRUCTOR;
31 bool get isEach => _blockType == CGBlock.EACH; 31 bool get isEach => _blockType == CGBlock.EACH;
32 bool get isWith => _blockType == CGBlock.WITH; 32 bool get isWith => _blockType == CGBlock.WITH;
33 33
34 bool get hasLocalName => _localName != null; 34 bool get hasLocalName => _localName != null;
35 String get localName => _localName; 35 String get localName => _localName;
36 36
37 CGStatement push(var elem, var parentName, [bool exact = false]) { 37 CGStatement push(var elem, var parentName, [bool exact = false]) {
38 var varName; 38 var varName;
39 if (elem is TemplateElement && elem.hasVar) { 39 if (elem is TemplateElement && elem.hasVar) {
(...skipping 964 matching lines...) Expand 10 before | Expand all | Expand 10 after
1004 for (String name in names) { 1004 for (String name in names) {
1005 buff.add(" var ${name} = _scopes[\"${name}\"];\n"); 1005 buff.add(" var ${name} = _scopes[\"${name}\"];\n");
1006 } 1006 }
1007 buff.add("\n"); 1007 buff.add("\n");
1008 } 1008 }
1009 1009
1010 return buff.toString(); 1010 return buff.toString();
1011 } 1011 }
1012 1012
1013 } 1013 }
OLDNEW
« no previous file with comments | « utils/pub/yaml/yaml_map.dart ('k') | utils/tests/pub/test_pub.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698