Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (102)
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 (322)
Collections:
Other Resources:
Rhino JavaScript Java Library Source Code
Rhino JavaScript Java Library is an open-source implementation of JavaScript
written entirely in Java.
Rhino JavaScript Java Library Source Code files are provided in binary package (rhino-1.7.14.zip).
You can also browse the source code below:
✍: FYIcenter.com
⏎ org/mozilla/javascript/InterpreterData.java
/* -*- Mode: java; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.javascript;
import java.io.Serializable;
import java.math.BigInteger;
import java.util.Arrays;
import org.mozilla.javascript.debug.DebuggableScript;
final class InterpreterData implements Serializable, DebuggableScript {
private static final long serialVersionUID = 5067677351589230234L;
static final int INITIAL_MAX_ICODE_LENGTH = 1024;
static final int INITIAL_STRINGTABLE_SIZE = 64;
static final int INITIAL_NUMBERTABLE_SIZE = 64;
static final int INITIAL_BIGINTTABLE_SIZE = 64;
InterpreterData(
int languageVersion, String sourceFile, String encodedSource, boolean isStrict) {
this.languageVersion = languageVersion;
this.itsSourceFile = sourceFile;
this.encodedSource = encodedSource;
this.isStrict = isStrict;
init();
}
InterpreterData(InterpreterData parent) {
this.parentData = parent;
this.languageVersion = parent.languageVersion;
this.itsSourceFile = parent.itsSourceFile;
this.encodedSource = parent.encodedSource;
this.isStrict = parent.isStrict;
init();
}
private void init() {
itsICode = new byte[INITIAL_MAX_ICODE_LENGTH];
itsStringTable = new String[INITIAL_STRINGTABLE_SIZE];
itsBigIntTable = new BigInteger[INITIAL_BIGINTTABLE_SIZE];
}
String itsName;
String itsSourceFile;
boolean itsNeedsActivation;
int itsFunctionType;
String[] itsStringTable;
double[] itsDoubleTable;
BigInteger[] itsBigIntTable;
InterpreterData[] itsNestedFunctions;
Object[] itsRegExpLiterals;
Object[] itsTemplateLiterals;
byte[] itsICode;
int[] itsExceptionTable;
int itsMaxVars;
int itsMaxLocals;
int itsMaxStack;
int itsMaxFrameArray;
// see comments in NativeFuncion for definition of argNames and argCount
String[] argNames;
boolean[] argIsConst;
int argCount;
int itsMaxCalleeArgs;
String encodedSource;
int encodedSourceStart;
int encodedSourceEnd;
int languageVersion;
boolean isStrict;
boolean topLevel;
boolean isES6Generator;
Object[] literalIds;
UintMap longJumps;
int firstLinePC = -1; // PC for the first LINE icode
InterpreterData parentData;
boolean evalScriptFlag; // true if script corresponds to eval() code
private int icodeHashCode = 0;
/** true if the function has been declared like "var foo = function() {...}" */
boolean declaredAsVar;
/** true if the function has been declared like "!function() {}". */
boolean declaredAsFunctionExpression;
@Override
public boolean isTopLevel() {
return topLevel;
}
@Override
public boolean isFunction() {
return itsFunctionType != 0;
}
@Override
public String getFunctionName() {
return itsName;
}
@Override
public int getParamCount() {
return argCount;
}
@Override
public int getParamAndVarCount() {
return argNames.length;
}
@Override
public String getParamOrVarName(int index) {
return argNames[index];
}
public boolean getParamOrVarConst(int index) {
return argIsConst[index];
}
@Override
public String getSourceName() {
return itsSourceFile;
}
@Override
public boolean isGeneratedScript() {
return ScriptRuntime.isGeneratedScript(itsSourceFile);
}
@Override
public int[] getLineNumbers() {
return Interpreter.getLineNumbers(this);
}
@Override
public int getFunctionCount() {
return (itsNestedFunctions == null) ? 0 : itsNestedFunctions.length;
}
@Override
public DebuggableScript getFunction(int index) {
return itsNestedFunctions[index];
}
@Override
public DebuggableScript getParent() {
return parentData;
}
public int icodeHashCode() {
int h = icodeHashCode;
if (h == 0) {
icodeHashCode = h = Arrays.hashCode(itsICode);
}
return h;
}
}
⏎ org/mozilla/javascript/InterpreterData.java
Or download all of them as a single archive file:
File name: rhino-1.7.14-sources.jar File size: 1029165 bytes Release date: 2022-01-06 Download
⇒ Example code to Test rhino-runtime-1.7.14.jar
⇐ Download Rhino JavaScript Binary Package
2022-05-03, ≈151🔥, 1💬
Popular Posts:
JDOM provides a solution for using XML from Java that is as simple as Java itself. There is no compe...
Jetty provides an HTTP server, HTTP client, and javax.servlet container. These components are open s...
JDK 17 jdk.incubator.foreign.jm odis the JMOD file for JDK 17 HTTP Server module. JDK 17 Incubator F...
Where Can I see Java Source Code files for Xerces Java 2.11.2? Here are Java Source Code files for X...
JDK 17 jdk.internal.le.jmod is the JMOD file for JDK 17 Internal Line Editing module. JDK 17 Interna...