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:
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/objects/AccessorPropertyDescriptor.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.objects;
import static jdk.nashorn.internal.runtime.ECMAErrors.typeError;
import static jdk.nashorn.internal.runtime.ScriptRuntime.UNDEFINED;
import static jdk.nashorn.internal.runtime.ScriptRuntime.sameValue;
import java.util.Objects;
import jdk.nashorn.internal.objects.annotations.Property;
import jdk.nashorn.internal.objects.annotations.ScriptClass;
import jdk.nashorn.internal.runtime.JSType;
import jdk.nashorn.internal.runtime.PropertyDescriptor;
import jdk.nashorn.internal.runtime.PropertyMap;
import jdk.nashorn.internal.runtime.ScriptFunction;
import jdk.nashorn.internal.runtime.ScriptObject;
import jdk.nashorn.internal.runtime.ScriptRuntime;
/**
* Accessor Property descriptor is used to represent attributes an object property
* that either has a getter or a setter.
*
* See ECMA 8.10 The Property Descriptor and Property Identifier Specification Types
*
*/
@ScriptClass("AccessorPropertyDescriptor")
public final class AccessorPropertyDescriptor extends ScriptObject implements PropertyDescriptor {
/** is this property configurable? */
@Property
public Object configurable;
/** is this property enumerable? */
@Property
public Object enumerable;
/** getter for property */
@Property
public Object get;
/** setter for property */
@Property
public Object set;
// initialized by nasgen
private static PropertyMap $nasgenmap$;
AccessorPropertyDescriptor(final boolean configurable, final boolean enumerable, final Object get, final Object set, final Global global) {
super(global.getObjectPrototype(), $nasgenmap$);
this.configurable = configurable;
this.enumerable = enumerable;
this.get = get;
this.set = set;
}
@Override
public boolean isConfigurable() {
return JSType.toBoolean(configurable);
}
@Override
public boolean isEnumerable() {
return JSType.toBoolean(enumerable);
}
@Override
public boolean isWritable() {
// Not applicable for this. But simplifies flag calculations.
return true;
}
@Override
public Object getValue() {
throw new UnsupportedOperationException("value");
}
@Override
public ScriptFunction getGetter() {
return (get instanceof ScriptFunction) ? (ScriptFunction)get : null;
}
@Override
public ScriptFunction getSetter() {
return (set instanceof ScriptFunction) ? (ScriptFunction)set : null;
}
@Override
public void setConfigurable(final boolean flag) {
this.configurable = flag;
}
@Override
public void setEnumerable(final boolean flag) {
this.enumerable = flag;
}
@Override
public void setWritable(final boolean flag) {
throw new UnsupportedOperationException("set writable");
}
@Override
public void setValue(final Object value) {
throw new UnsupportedOperationException("set value");
}
@Override
public void setGetter(final Object getter) {
this.get = getter;
}
@Override
public void setSetter(final Object setter) {
this.set = setter;
}
@Override
public PropertyDescriptor fillFrom(final ScriptObject sobj) {
if (sobj.has(CONFIGURABLE)) {
this.configurable = JSType.toBoolean(sobj.get(CONFIGURABLE));
} else {
delete(CONFIGURABLE, false);
}
if (sobj.has(ENUMERABLE)) {
this.enumerable = JSType.toBoolean(sobj.get(ENUMERABLE));
} else {
delete(ENUMERABLE, false);
}
if (sobj.has(GET)) {
final Object getter = sobj.get(GET);
if (getter == UNDEFINED || getter instanceof ScriptFunction) {
this.get = getter;
} else {
throw typeError("not.a.function", ScriptRuntime.safeToString(getter));
}
} else {
delete(GET, false);
}
if (sobj.has(SET)) {
final Object setter = sobj.get(SET);
if (setter == UNDEFINED || setter instanceof ScriptFunction) {
this.set = setter;
} else {
throw typeError("not.a.function", ScriptRuntime.safeToString(setter));
}
} else {
delete(SET, false);
}
return this;
}
@Override
public int type() {
return ACCESSOR;
}
@Override
public boolean hasAndEquals(final PropertyDescriptor otherDesc) {
if (! (otherDesc instanceof AccessorPropertyDescriptor)) {
return false;
}
final AccessorPropertyDescriptor other = (AccessorPropertyDescriptor)otherDesc;
return (!has(CONFIGURABLE) || sameValue(configurable, other.configurable)) &&
(!has(ENUMERABLE) || sameValue(enumerable, other.enumerable)) &&
(!has(GET) || sameValue(get, other.get)) &&
(!has(SET) || sameValue(set, other.set));
}
@Override
public boolean equals(final Object obj) {
if (this == obj) {
return true;
}
if (! (obj instanceof AccessorPropertyDescriptor)) {
return false;
}
final AccessorPropertyDescriptor other = (AccessorPropertyDescriptor)obj;
return sameValue(configurable, other.configurable) &&
sameValue(enumerable, other.enumerable) &&
sameValue(get, other.get) &&
sameValue(set, other.set);
}
@Override
public String toString() {
return '[' + getClass().getSimpleName() + " {configurable=" + configurable + " enumerable=" + enumerable + " getter=" + get + " setter=" + set + "}]";
}
@Override
public int hashCode() {
int hash = 7;
hash = 41 * hash + Objects.hashCode(this.configurable);
hash = 41 * hash + Objects.hashCode(this.enumerable);
hash = 41 * hash + Objects.hashCode(this.get);
hash = 41 * hash + Objects.hashCode(this.set);
return hash;
}
}
⏎ jdk/nashorn/internal/objects/AccessorPropertyDescriptor.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, ≈314🔥, 0💬
Popular Posts:
SLF4J API is a simple API that allows to plug in any desired logging library at deployment time. Her...
Where to get the Java source code for Connector/J 8.0 User Impl module? Java source code files for C...
JDK 17 jdk.compiler.jmod is the JMOD file for JDK 17 Compiler tool, which can be invoked by the "jav...
JDK 8 jconsole.jar is the JAR file for JDK 8 JConsole, which is a graphical monitoring tool to monit...
JDK 17 jdk.hotspot.agent.jmod is the JMOD file for JDK 17 Hotspot Agent module. JDK 17 Hotspot Agent...