nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/ConsString.java
equal
deleted
inserted
replaced
22 * or visit www.oracle.com if you need additional information or have any |
22 * or visit www.oracle.com if you need additional information or have any |
23 * questions. |
23 * questions. |
24 */ |
24 */ |
25 |
25 |
26 package jdk.nashorn.internal.runtime; |
26 package jdk.nashorn.internal.runtime; |
|
27 |
|
28 import static jdk.nashorn.internal.runtime.JSType.isString; |
27 |
29 |
28 import java.util.ArrayDeque; |
30 import java.util.ArrayDeque; |
29 import java.util.Deque; |
31 import java.util.Deque; |
30 |
32 |
31 /** |
33 /** |
50 * |
52 * |
51 * @param left left char sequence |
53 * @param left left char sequence |
52 * @param right right char sequence |
54 * @param right right char sequence |
53 */ |
55 */ |
54 public ConsString(final CharSequence left, final CharSequence right) { |
56 public ConsString(final CharSequence left, final CharSequence right) { |
55 assert left instanceof String || left instanceof ConsString; |
57 assert isString(left); |
56 assert right instanceof String || right instanceof ConsString; |
58 assert isString(right); |
57 this.left = left; |
59 this.left = left; |
58 this.right = right; |
60 this.right = right; |
59 length = left.length() + right.length(); |
61 length = left.length() + right.length(); |
60 if (length < 0) { |
62 if (length < 0) { |
61 throw new IllegalArgumentException("too big concatenated String"); |
63 throw new IllegalArgumentException("too big concatenated String"); |