OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 import "dart:_internal" as _symbol_dev; | 5 import "dart:_internal" as _symbol_dev; |
6 | 6 |
7 /** | 7 /** |
8 * Returns a [MirrorSystem] for the current isolate. | 8 * Returns a [MirrorSystem] for the current isolate. |
9 */ | 9 */ |
10 patch MirrorSystem currentMirrorSystem() { | 10 patch MirrorSystem currentMirrorSystem() { |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
60 // Class._constructor@xxx -> Class._constructor | 60 // Class._constructor@xxx -> Class._constructor |
61 // _Class@xxx._constructor@xxx -> _Class._constructor | 61 // _Class@xxx._constructor@xxx -> _Class._constructor |
62 // lib._S@xxx with lib._M1@xxx, lib._M2@xxx -> lib._S with lib._M1, lib._M2 | 62 // lib._S@xxx with lib._M1@xxx, lib._M2@xxx -> lib._S with lib._M1, lib._M2 |
63 StringBuffer result = new StringBuffer(); | 63 StringBuffer result = new StringBuffer(); |
64 bool add_setter_suffix = false; | 64 bool add_setter_suffix = false; |
65 var pos = 0; | 65 var pos = 0; |
66 if (string.length >= 4 && string[3] == ':') { | 66 if (string.length >= 4 && string[3] == ':') { |
67 // Drop 'get:' or 'set:' prefix. | 67 // Drop 'get:' or 'set:' prefix. |
68 pos = 4; | 68 pos = 4; |
69 if (string[0] == 's') { | 69 if (string[0] == 's') { |
70 add_setter_suffix; | 70 add_setter_suffix = true; |
71 } | 71 } |
72 } | 72 } |
73 // Skip everything between AT and PERIOD, SPACE, COMMA or END | 73 // Skip everything between AT and PERIOD, SPACE, COMMA or END |
74 bool skip = false; | 74 bool skip = false; |
75 for (; pos < string.length; pos++) { | 75 for (; pos < string.length; pos++) { |
76 var char = string[pos]; | 76 var char = string[pos]; |
77 if (char == '@') { | 77 if (char == '@') { |
78 skip = true; | 78 skip = true; |
79 } else if (char == '.' || char == ' ' || char == ',') { | 79 } else if (char == '.' || char == ' ' || char == ',') { |
80 skip = false; | 80 skip = false; |
(...skipping 24 matching lines...) Expand all Loading... |
105 // TODO(rmacnak): Eliminate this class. | 105 // TODO(rmacnak): Eliminate this class. |
106 class MirroredCompilationError { | 106 class MirroredCompilationError { |
107 final String message; | 107 final String message; |
108 | 108 |
109 MirroredCompilationError(this.message); | 109 MirroredCompilationError(this.message); |
110 | 110 |
111 String toString() { | 111 String toString() { |
112 return "Compile-time error during mirrored execution: <$message>"; | 112 return "Compile-time error during mirrored execution: <$message>"; |
113 } | 113 } |
114 } | 114 } |
OLD | NEW |