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 |
40 /// Returns true if the two arguments are the same value, and that value is | 47 /// Returns true if the two arguments are the same value, and that value is |
41 /// not NaN, or if one argument is +0 and the other is -0. | 48 /// not NaN, or if one argument is +0 and the other is -0. |
42 /// | 49 /// |
43 /// At most one of the arguments may be null. | 50 /// At most one of the arguments may be null. |
44 StrictEq, | 51 StrictEq, |
45 | 52 |
46 /// Negated version of [StrictEq]. Introduced by [LogicalRewriter] in Tree IR. | 53 /// Negated version of [StrictEq]. Introduced by [LogicalRewriter] in Tree IR. |
47 StrictNeq, | 54 StrictNeq, |
48 | 55 |
49 /// Returns true if the two arguments are both null or are the same string, | 56 /// Returns true if the two arguments are both null or are the same string, |
(...skipping 30 matching lines...) Expand all Loading... |
80 /// Compiles to `Math.floor(x) === x` | 87 /// Compiles to `Math.floor(x) === x` |
81 IsFloor, | 88 IsFloor, |
82 | 89 |
83 /// Returns true if the argument is an integer. | 90 /// Returns true if the argument is an integer. |
84 /// | 91 /// |
85 /// The argument must be repeated 3 times. | 92 /// The argument must be repeated 3 times. |
86 /// | 93 /// |
87 /// Compiles to `typeof x === 'number' && Math.floor(x) === x` | 94 /// Compiles to `typeof x === 'number' && Math.floor(x) === x` |
88 IsNumberAndFloor, | 95 IsNumberAndFloor, |
89 } | 96 } |
OLD | NEW |