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.rmic.jmod - RMI Compiler Tool
JDK 11 jdk.rmic.jmod is the JMOD file for JDK 11 RMI (Remote Method Invocation) Compiler Tool tool,
which can be invoked by the "rmic" command.
JDK 11 RMI Compiler Tool tool compiled class files are stored in \fyicenter\jdk-11.0.1\jmods\jdk.rmic.jmod.
JDK 11 RMI Compiler Tool tool compiled class files are also linked and stored in the \fyicenter\jdk-11.0.1\lib\modules JImage file.
JDK 11 RMI Compiler Tool tool source code files are stored in \fyicenter\jdk-11.0.1\lib\src.zip\jdk.rmic.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ sun/tools/asm/LocalVariableTable.java
/* * Copyright (c) 1995, 2003, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package sun.tools.asm; import sun.tools.java.*; import java.io.IOException; import java.io.DataOutputStream; /** * This class is used to assemble the local variable table. * * WARNING: The contents of this source file are not part of any * supported API. Code that depends on them does so at its own risk: * they are subject to change or removal without notice. * * @author Arthur van Hoff */ final class LocalVariableTable { LocalVariable locals[] = new LocalVariable[8]; int len; /** * Define a new local variable. Merge entries where possible. */ void define(MemberDefinition field, int slot, int from, int to) { if (from >= to) { return; } for (int i = 0 ; i < len ; i++) { if ((locals[i].field == field) && (locals[i].slot == slot) && (from <= locals[i].to) && (to >= locals[i].from)) { locals[i].from = Math.min(locals[i].from, from); locals[i].to = Math.max(locals[i].to, to); return; } } if (len == locals.length) { LocalVariable newlocals[] = new LocalVariable[len * 2]; System.arraycopy(locals, 0, newlocals, 0, len); locals = newlocals; } locals[len++] = new LocalVariable(field, slot, from, to); } /** * Trim overlapping local ranges. Java forbids shadowing of * locals in nested scopes, but non-nested scopes may still declare * locals with the same name. Because local variable ranges are * computed using flow analysis as part of assembly, it isn't * possible to simply make sure variable ranges end where the * enclosing lexical scope ends. This method makes sure that * variables with the same name don't overlap, giving priority to * fields with higher slot numbers that should have appeared later * in the source. */ private void trim_ranges() { for (int i=0; i<len; i++) { for (int j=i+1; j<len; j++) { if ((locals[i].field.getName()==locals[j].field.getName()) && (locals[i].from <= locals[j].to) && (locals[i].to >= locals[j].from)) { // At this point we know that both ranges are // the same name and there is also overlap or they abut if (locals[i].slot < locals[j].slot) { if (locals[i].from < locals[j].from) { locals[i].to = Math.min(locals[i].to, locals[j].from); } else { // We've detected two local variables with the // same name, and the one with the greater slot // number starts before the other. This order // reversal may happen with locals with the same // name declared in both a try body and an // associated catch clause. This is rare, and // we give up. } } else if (locals[i].slot > locals[j].slot) { if (locals[i].from > locals[j].from) { locals[j].to = Math.min(locals[j].to, locals[i].from); } else { // Same situation as above; just give up. } } else { // This case can happen if there are two variables // with the same name and slot numbers, and ranges // that abut. AFAIK the only way this can occur // is with multiple static initializers. Punt. } } } } } /** * Write out the data. */ void write(Environment env, DataOutputStream out, ConstantPool tab) throws IOException { trim_ranges(); out.writeShort(len); for (int i = 0 ; i < len ; i++) { //System.out.println("pc=" + locals[i].from + ", len=" + (locals[i].to - locals[i].from) + ", nm=" + locals[i].field.getName() + ", slot=" + locals[i].slot); out.writeShort(locals[i].from); out.writeShort(locals[i].to - locals[i].from); out.writeShort(tab.index(locals[i].field.getName().toString())); out.writeShort(tab.index(locals[i].field.getType().getTypeSignature())); out.writeShort(locals[i].slot); } } }
⏎ sun/tools/asm/LocalVariableTable.java
Or download all of them as a single archive file:
File name: jdk.rmic-11.0.1-src.zip File size: 418901 bytes Release date: 2018-11-04 Download
⇒ JDK 11 jdk.scripting.nashorn.jmod - Scripting Nashorn Module
2020-04-25, 37681👍, 0💬
Popular Posts:
Where Can I see Java Source Code files for Xerces Java 2.11.2? Here are Java Source Code files for X...
What JAR files are required to run sax\Writer.java provided in the Apache Xerces package? 1 JAR file...
What Is javamail-1_2.zip? javamail-1_2.zip is the binary package of JavaMail API 1.2 in ZIP format. ...
What Is jaxb-api-2.1.6.jar? Java Architecture for XML Binding (JAXB) is a Java API that allows Java ...
What Is mail.jar of JavaMail 1.4? I got the JAR file from javamail-1_4.zip. mail.jar in javamail-1_4...