OLD | NEW |
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 library builtin_operator; | 4 library builtin_operator; |
5 // This is shared by the CPS and Tree IRs. | 5 // This is shared by the CPS and Tree IRs. |
6 // Both cps_ir_nodes and tree_ir_nodes import and re-export this file. | 6 // Both cps_ir_nodes and tree_ir_nodes import and re-export this file. |
7 | 7 |
8 /// An operator supported natively in the CPS and Tree IRs using the | 8 /// An operator supported natively in the CPS and Tree IRs using the |
9 /// `ApplyBuiltinOperator` instructions. | 9 /// `ApplyBuiltinOperator` instructions. |
10 /// | 10 /// |
(...skipping 19 matching lines...) Expand all Loading... |
30 NumSubtract, | 30 NumSubtract, |
31 NumMultiply, | 31 NumMultiply, |
32 NumAnd, | 32 NumAnd, |
33 NumOr, | 33 NumOr, |
34 NumXor, | 34 NumXor, |
35 NumLt, | 35 NumLt, |
36 NumLe, | 36 NumLe, |
37 NumGt, | 37 NumGt, |
38 NumGe, | 38 NumGe, |
39 | 39 |
40 /// Concatenates any number of strings. | |
41 /// | |
42 /// Takes any number of arguments, and each argument must be a string. | |
43 /// | |
44 /// Returns the empty string if no arguments are given. | |
45 StringConcatenate, | |
46 | |
47 /// Returns true if the two arguments are the same value, and that value is | 40 /// Returns true if the two arguments are the same value, and that value is |
48 /// not NaN, or if one argument is +0 and the other is -0. | 41 /// not NaN, or if one argument is +0 and the other is -0. |
49 /// | 42 /// |
50 /// At most one of the arguments may be null. | 43 /// At most one of the arguments may be null. |
51 StrictEq, | 44 StrictEq, |
52 | 45 |
53 /// Negated version of [StrictEq]. Introduced by [LogicalRewriter] in Tree IR. | 46 /// Negated version of [StrictEq]. Introduced by [LogicalRewriter] in Tree IR. |
54 StrictNeq, | 47 StrictNeq, |
55 | 48 |
56 /// Returns true if the two arguments are both null or are the same string, | 49 /// Returns true if the two arguments are both null or are the same string, |
(...skipping 30 matching lines...) Expand all Loading... |
87 /// Compiles to `Math.floor(x) === x` | 80 /// Compiles to `Math.floor(x) === x` |
88 IsFloor, | 81 IsFloor, |
89 | 82 |
90 /// Returns true if the argument is an integer. | 83 /// Returns true if the argument is an integer. |
91 /// | 84 /// |
92 /// The argument must be repeated 3 times. | 85 /// The argument must be repeated 3 times. |
93 /// | 86 /// |
94 /// Compiles to `typeof x === 'number' && Math.floor(x) === x` | 87 /// Compiles to `typeof x === 'number' && Math.floor(x) === x` |
95 IsNumberAndFloor, | 88 IsNumberAndFloor, |
96 } | 89 } |
OLD | NEW |