Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 11 jdk.scripting.nashorn.jmod - Scripting Nashorn Module
JDK 11 jdk.scripting.nashorn.jmod is the JMOD file for JDK 11 Scripting Nashorn module.
JDK 11 Scripting Nashorn module compiled class files are stored in \fyicenter\jdk-11.0.1\jmods\jdk.scripting.nashorn.jmod.
JDK 11 Scripting Nashorn module compiled class files are also linked and stored in the \fyicenter\jdk-11.0.1\lib\modules JImage file.
JDK 11 Scripting Nashorn module source code files are stored in \fyicenter\jdk-11.0.1\lib\src.zip\jdk.scripting.nashorn.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ jdk/nashorn/internal/runtime/ConsString.java
/* * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package jdk.nashorn.internal.runtime; import static jdk.nashorn.internal.runtime.JSType.isString; import java.util.ArrayDeque; import java.util.Deque; /** * This class represents a string composed of two parts which may themselves be * instances of <code>ConsString</code> or {@link String}. Copying of characters to * a proper string is delayed until it becomes necessary. */ public final class ConsString implements CharSequence { private CharSequence left, right; private final int length; private volatile int state = STATE_NEW; private final static int STATE_NEW = 0; private final static int STATE_THRESHOLD = 2; private final static int STATE_FLATTENED = -1; /** * Constructor * * Takes two {@link CharSequence} instances that, concatenated, forms this {@code ConsString} * * @param left left char sequence * @param right right char sequence */ public ConsString(final CharSequence left, final CharSequence right) { assert isString(left); assert isString(right); this.left = left; this.right = right; length = left.length() + right.length(); if (length < 0) { throw new IllegalArgumentException("too big concatenated String"); } } @Override public String toString() { return (String) flattened(true); } @Override public int length() { return length; } @Override public char charAt(final int index) { return flattened(true).charAt(index); } @Override public CharSequence subSequence(final int start, final int end) { return flattened(true).subSequence(start, end); } /** * Returns the components of this ConsString as a {@code CharSequence} array with two elements. * The elements will be either {@code Strings} or other {@code ConsStrings}. * @return CharSequence array of length 2 */ public synchronized CharSequence[] getComponents() { return new CharSequence[] { left, right }; } private CharSequence flattened(final boolean flattenNested) { if (state != STATE_FLATTENED) { flatten(flattenNested); } return left; } private synchronized void flatten(final boolean flattenNested) { // We use iterative traversal as recursion may exceed the stack size limit. final char[] chars = new char[length]; int pos = length; // Strings are most often composed by appending to the end, which causes ConsStrings // to be very unbalanced, with mostly single string elements on the right and a long // linear list on the left. Traversing from right to left helps to keep the stack small // in this scenario. final Deque<CharSequence> stack = new ArrayDeque<>(); stack.addFirst(left); CharSequence cs = right; do { if (cs instanceof ConsString) { final ConsString cons = (ConsString) cs; // Count the times a cons-string is traversed as part of other cons-strings being flattened. // If it crosses a threshold we flatten the nested cons-string internally. if (cons.state == STATE_FLATTENED || (flattenNested && ++cons.state >= STATE_THRESHOLD)) { cs = cons.flattened(false); } else { stack.addFirst(cons.left); cs = cons.right; } } else { final String str = (String) cs; pos -= str.length(); str.getChars(0, str.length(), chars, pos); cs = stack.isEmpty() ? null : stack.pollFirst(); } } while (cs != null); left = new String(chars); right = ""; state = STATE_FLATTENED; } }
⏎ jdk/nashorn/internal/runtime/ConsString.java
Or download all of them as a single archive file:
File name: jdk.scripting.nashorn-11.0.1-src.zip File size: 1390965 bytes Release date: 2018-11-04 Download
⇒ JDK 11 jdk.scripting.nashorn.shell.jmod - Scripting Nashorn Shell Module
2020-04-25, 82955👍, 0💬
Popular Posts:
Saxon is an open source product available under the Mozilla Public License. It provides implementati...
How to download and install ojdbc11.jar for Oracle 21c? ojdbc11.jar for Oracle 21c is a Java JDBC Dr...
JRE 8 rt.jar is the JAR file for JRE 8 RT (Runtime) libraries. JRE (Java Runtime) 8 is the runtime e...
How to download and install xml-commons External Source Package? The source package contains Java so...
JDK 11 jdk.crypto.cryptoki.jmod is the JMOD file for JDK 11 Crypto Cryptoki module. JDK 11 Crypto KI...