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/objects/NativeWeakMap.java
/* * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package jdk.nashorn.internal.objects; import java.util.Map; import java.util.WeakHashMap; import jdk.nashorn.internal.objects.annotations.Attribute; import jdk.nashorn.internal.objects.annotations.Constructor; import jdk.nashorn.internal.objects.annotations.Function; import jdk.nashorn.internal.objects.annotations.ScriptClass; import jdk.nashorn.internal.runtime.PropertyMap; import jdk.nashorn.internal.runtime.ScriptObject; import jdk.nashorn.internal.runtime.ScriptRuntime; import jdk.nashorn.internal.runtime.Undefined; import static jdk.nashorn.internal.runtime.ECMAErrors.typeError; import static jdk.nashorn.internal.runtime.JSType.isPrimitive; /** * This implements the ECMA6 WeakMap object. */ @ScriptClass("WeakMap") public class NativeWeakMap extends ScriptObject { private final Map<Object, Object> jmap = new WeakHashMap<>(); // initialized by nasgen private static PropertyMap $nasgenmap$; private NativeWeakMap(final ScriptObject proto, final PropertyMap map) { super(proto, map); } /** * ECMA6 23.3.1 The WeakMap Constructor * * @param isNew whether the new operator used * @param self self reference * @param arg optional iterable argument * @return a new WeakMap object */ @Constructor(arity = 0) public static Object construct(final boolean isNew, final Object self, final Object arg) { if (!isNew) { throw typeError("constructor.requires.new", "WeakMap"); } final Global global = Global.instance(); final NativeWeakMap weakMap = new NativeWeakMap(global.getWeakMapPrototype(), $nasgenmap$); populateMap(weakMap.jmap, arg, global); return weakMap; } /** * ECMA6 23.3.3.5 WeakMap.prototype.set ( key , value ) * * @param self the self reference * @param key the key * @param value the value * @return this WeakMap object */ @Function(attributes = Attribute.NOT_ENUMERABLE) public static Object set(final Object self, final Object key, final Object value) { final NativeWeakMap map = getMap(self); map.jmap.put(checkKey(key), value); return self; } /** * ECMA6 23.3.3.3 WeakMap.prototype.get ( key ) * * @param self the self reference * @param key the key * @return the associated value or undefined */ @Function(attributes = Attribute.NOT_ENUMERABLE) public static Object get(final Object self, final Object key) { final NativeWeakMap map = getMap(self); if (isPrimitive(key)) { return Undefined.getUndefined(); } return map.jmap.get(key); } /** * ECMA6 23.3.3.2 WeakMap.prototype.delete ( key ) * * @param self the self reference * @param key the key to delete * @return true if the key was deleted */ @Function(attributes = Attribute.NOT_ENUMERABLE) public static boolean delete(final Object self, final Object key) { final Map<Object, Object> map = getMap(self).jmap; if (isPrimitive(key)) { return false; } final boolean returnValue = map.containsKey(key); map.remove(key); return returnValue; } /** * ECMA6 23.3.3.4 WeakMap.prototype.has ( key ) * * @param self the self reference * @param key the key * @return true if key is contained */ @Function(attributes = Attribute.NOT_ENUMERABLE) public static boolean has(final Object self, final Object key) { final NativeWeakMap map = getMap(self); return !isPrimitive(key) && map.jmap.containsKey(key); } @Override public String getClassName() { return "WeakMap"; } /** * Make sure {@code key} is not a JavaScript primitive value. * * @param key a key object * @return the valid key */ static Object checkKey(final Object key) { if (isPrimitive(key)) { throw typeError("invalid.weak.key", ScriptRuntime.safeToString(key)); } return key; } static void populateMap(final Map<Object, Object> map, final Object arg, final Global global) { // This method is similar to NativeMap.populateMap, but it uses a different // map implementation and the checking/conversion of keys differs as well. if (arg != null && arg != Undefined.getUndefined()) { AbstractIterator.iterate(arg, global, value -> { if (isPrimitive(value)) { throw typeError(global, "not.an.object", ScriptRuntime.safeToString(value)); } if (value instanceof ScriptObject) { final ScriptObject sobj = (ScriptObject) value; map.put(checkKey(sobj.get(0)), sobj.get(1)); } }); } } private static NativeWeakMap getMap(final Object self) { if (self instanceof NativeWeakMap) { return (NativeWeakMap)self; } else { throw typeError("not.a.weak.map", ScriptRuntime.safeToString(self)); } } }
⏎ jdk/nashorn/internal/objects/NativeWeakMap.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, 109758👍, 0💬
Popular Posts:
Where to find answers to frequently asked questions on Downloading and Using JDK (Java Development K...
Apache Axis2 is the core engine for Web services. It is a complete re-design and re-write of the wid...
Java Architecture for XML Binding (JAXB) is a Java API that allows Java developers to map Java class...
JDK 11 jrt-fs.jar is the JAR file for JDK 11 JRT-FS (Java RunTime - File System) defined in the "jdk...
How to run "javac" command from JDK tools.jar file? "javac" is the Java compiler command that allows...