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/Undefined.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;
/**
* This class implements the Undefined value in JavaScript.
*
* <p>We represent "undefined" internally using two static objects -- "Undefined.instance" and
* SCRIPTABLE_UNDEFINED. Java code that needs to make something undefined should generally use the
* first, and use the second if a Scriptable object is absolutely required.
*
* <p>Java code that needs to test whether something is undefined <b>must</b> use the "isUndefined"
* method because of the multiple internal representations.
*/
public class Undefined implements Serializable {
private static final long serialVersionUID = 9195680630202616767L;
/**
* This is the standard value for "undefined" in Rhino. Java code that needs to represent
* "undefined" should use this object (rather than a new instance of this class).
*/
public static final Object instance = new Undefined();
private static final int instanceHash = System.identityHashCode(instance);
private Undefined() {}
public Object readResolve() {
return instance;
}
@Override
public boolean equals(Object obj) {
return isUndefined(obj) || super.equals(obj);
}
@Override
public int hashCode() {
// All instances of Undefined are equivalent!
return instanceHash;
}
/**
* An alternate representation of undefined, to be used only when we need to pass it to a method
* that takes as Scriptable as a parameter. This is used when we need to pass undefined as the
* "this" parmeter of a Callable instance, because we cannot change that interface without
* breaking backward compatibility.
*/
public static final Scriptable SCRIPTABLE_UNDEFINED =
new Scriptable() {
@Override
public String getClassName() {
return "undefined";
}
@Override
public Object get(String name, Scriptable start) {
return NOT_FOUND;
}
@Override
public Object get(int index, Scriptable start) {
return NOT_FOUND;
}
@Override
public boolean has(String name, Scriptable start) {
return false;
}
@Override
public boolean has(int index, Scriptable start) {
return false;
}
@Override
public void put(String name, Scriptable start, Object value) {}
@Override
public void put(int index, Scriptable start, Object value) {}
@Override
public void delete(String name) {}
@Override
public void delete(int index) {}
@Override
public Scriptable getPrototype() {
return null;
}
@Override
public void setPrototype(Scriptable prototype) {}
@Override
public Scriptable getParentScope() {
return null;
}
@Override
public void setParentScope(Scriptable parent) {}
@Override
public Object[] getIds() {
return ScriptRuntime.emptyArgs;
}
@Override
public Object getDefaultValue(Class<?> hint) {
if (hint == null || hint == ScriptRuntime.StringClass) {
return toString();
}
return null;
}
@Override
public boolean hasInstance(Scriptable instance) {
return false;
}
@Override
public String toString() {
return "undefined";
}
@Override
public boolean equals(Object obj) {
return isUndefined(obj) || super.equals(obj);
}
@Override
public int hashCode() {
return instanceHash;
}
};
/**
* Safely test whether "obj" is undefined. Java code must use this function rather than testing
* the value directly since we have two representations of undefined in Rhino.
*/
public static boolean isUndefined(Object obj) {
return Undefined.instance == obj || Undefined.SCRIPTABLE_UNDEFINED == obj;
}
}
⏎ org/mozilla/javascript/Undefined.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, ≈181🔥, 1💬
Popular Posts:
Java Architecture for XML Binding (JAXB) is a Java API that allows Java developers to map Java class...
JAX-WS is an API for building web services and clients. It is the next generation Web Services API r...
What Is mail.jar of JavaMail 1.4.2? I got the JAR file from javamail-1.4.2.zip. mail.jar in javamail...
JDK 11 java.base.jmod is the JMOD file for JDK 11 Base module. JDK 11 Base module compiled class fil...
JDK 11 java.sql.jmod is the JMOD file for JDK 11 SQL (Structured Query Language) module. JDK 11 SQL ...