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 17 java.base.jmod - Base Module
JDK 17 java.base.jmod is the JMOD file for JDK 17 Base module.
JDK 17 Base module compiled class files are stored in \fyicenter\jdk-17.0.5\jmods\java.base.jmod.
JDK 17 Base module compiled class files are also linked and stored in the \fyicenter\jdk-17.0.5\lib\modules JImage file.
JDK 17 Base module source code files are stored in \fyicenter\jdk-17.0.5\lib\src.zip\java.base.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ java/nio/DirectCharBufferU.java
/*
* Copyright (c) 2000, 2021, Oracle and/or its affiliates. All rights reserved.
* ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
// -- This file was mechanically generated: Do not edit! -- //
package java.nio;
import java.io.FileDescriptor;
import java.lang.ref.Reference;
import java.util.Objects;
import jdk.internal.access.foreign.MemorySegmentProxy;
import jdk.internal.misc.ScopedMemoryAccess.Scope;
import jdk.internal.misc.VM;
import jdk.internal.ref.Cleaner;
import sun.nio.ch.DirectBuffer;
class DirectCharBufferU
extends CharBuffer
implements DirectBuffer
{
// Cached array base offset
private static final long ARRAY_BASE_OFFSET = UNSAFE.arrayBaseOffset(char[].class);
// Cached unaligned-access capability
protected static final boolean UNALIGNED = Bits.unaligned();
// Base address, used in all indexing calculations
// NOTE: moved up to Buffer.java for speed in JNI GetDirectBufferAddress
// protected long address;
// An object attached to this buffer. If this buffer is a view of another
// buffer then we use this field to keep a reference to that buffer to
// ensure that its memory isn't freed before we are done with it.
private final Object att;
public Object attachment() {
return att;
}
public Cleaner cleaner() { return null; }
// For duplicates and slices
//
DirectCharBufferU(DirectBuffer db, // package-private
int mark, int pos, int lim, int cap, int off,
MemorySegmentProxy segment)
{
super(mark, pos, lim, cap,
segment);
address = ((Buffer)db).address + off;
Object attachment = db.attachment();
att = (attachment == null ? db : attachment);
}
@Override
Object base() {
return null;
}
public CharBuffer slice() {
int pos = this.position();
int lim = this.limit();
int rem = (pos <= lim ? lim - pos : 0);
int off = (pos << 1);
assert (off >= 0);
return new DirectCharBufferU(this,
-1,
0,
rem,
rem,
off,
segment);
}
@Override
public CharBuffer slice(int index, int length) {
Objects.checkFromIndexSize(index, length, limit());
return new DirectCharBufferU(this,
-1,
0,
length,
length,
index << 1,
segment);
}
public CharBuffer duplicate() {
return new DirectCharBufferU(this,
this.markValue(),
this.position(),
this.limit(),
this.capacity(),
0,
segment);
}
public CharBuffer asReadOnlyBuffer() {
return new DirectCharBufferRU(this,
this.markValue(),
this.position(),
this.limit(),
this.capacity(),
0,
segment);
}
public long address() {
Scope scope = scope();
if (scope != null) {
if (scope.ownerThread() == null) {
throw new UnsupportedOperationException("ByteBuffer derived from shared segments not supported");
}
try {
scope.checkValidState();
} catch (Scope.ScopedAccessError e) {
throw new IllegalStateException("This segment is already closed");
}
}
return address;
}
private long ix(int i) {
return address + ((long)i << 1);
}
public char get() {
try {
return ((SCOPED_MEMORY_ACCESS.getChar(scope(), null, ix(nextGetIndex()))));
} finally {
Reference.reachabilityFence(this);
}
}
public char get(int i) {
try {
return ((SCOPED_MEMORY_ACCESS.getChar(scope(), null, ix(checkIndex(i)))));
} finally {
Reference.reachabilityFence(this);
}
}
char getUnchecked(int i) {
try {
return ((SCOPED_MEMORY_ACCESS.getChar(null, null, ix(i))));
} finally {
Reference.reachabilityFence(this);
}
}
public CharBuffer put(char x) {
try {
SCOPED_MEMORY_ACCESS.putChar(scope(), null, ix(nextPutIndex()), ((x)));
} finally {
Reference.reachabilityFence(this);
}
return this;
}
public CharBuffer put(int i, char x) {
try {
SCOPED_MEMORY_ACCESS.putChar(scope(), null, ix(checkIndex(i)), ((x)));
} finally {
Reference.reachabilityFence(this);
}
return this;
}
public CharBuffer compact() {
int pos = position();
int lim = limit();
assert (pos <= lim);
int rem = (pos <= lim ? lim - pos : 0);
try {
// null is passed as destination Scope to avoid checking scope() twice
SCOPED_MEMORY_ACCESS.copyMemory(scope(), null, null,
ix(pos), null, ix(0), (long)rem << 1);
} finally {
Reference.reachabilityFence(this);
}
position(rem);
limit(capacity());
discardMark();
return this;
}
public boolean isDirect() {
return true;
}
public boolean isReadOnly() {
return false;
}
public String toString(int start, int end) {
Objects.checkFromToIndex(start, end, limit());
try {
int len = end - start;
char[] ca = new char[len];
CharBuffer cb = CharBuffer.wrap(ca);
CharBuffer db = this.duplicate();
db.position(start);
db.limit(end);
cb.put(db);
return new String(ca);
} catch (StringIndexOutOfBoundsException x) {
throw new IndexOutOfBoundsException();
}
}
// --- Methods to support CharSequence ---
public CharBuffer subSequence(int start, int end) {
int pos = position();
int lim = limit();
assert (pos <= lim);
pos = (pos <= lim ? pos : lim);
int len = lim - pos;
Objects.checkFromToIndex(start, end, len);
return new DirectCharBufferU(this,
-1,
pos + start,
pos + end,
capacity(),
offset, segment);
}
public ByteOrder order() {
return ((ByteOrder.nativeOrder() != ByteOrder.BIG_ENDIAN)
? ByteOrder.LITTLE_ENDIAN : ByteOrder.BIG_ENDIAN);
}
ByteOrder charRegionOrder() {
return order();
}
}
⏎ java/nio/DirectCharBufferU.java
Or download all of them as a single archive file:
File name: java.base-17.0.5-src.zip File size: 8883851 bytes Release date: 2022-09-13 Download
2023-09-26, ≈922🔥, 1💬
Popular Posts:
maven-core-3.8.6.jar is the JAR file for Apache Maven 3.8.6 Core module. Apache Maven is a software ...
JDK 11 java.desktop.jmod is the JMOD file for JDK 11 Desktop module. JDK 11 Desktop module compiled ...
What Is poi-ooxml-5.2.3.jar? poi-ooxml-5.2.3.jar is one of the JAR files for Apache POI 5.2.3, which...
JDK 7 tools.jar is the JAR file for JDK 7 tools. It contains Java classes to support different JDK t...
JDK 17 jdk.incubator.vector.jmo dis the JMOD file for JDK 17 HTTP Server module. JDK 17 Incubator Ve...