blob: e5a3a15fefd681391e254b9d455db5d84caaf17b [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>ValueTypeHelper (OpenJ9 JDK 11)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="keywords" content="com.ibm.j9ddr.vm29.pointer.helper.ValueTypeHelper class">
<meta name="keywords" content="logger">
<meta name="keywords" content="getValueTypeHelper()">
<meta name="keywords" content="areValueTypesSupported()">
<meta name="keywords" content="findJ9ClassInFlattenedClassCacheWithFieldName()">
<meta name="keywords" content="findNestedClassHierarchy()">
<meta name="keywords" content="findJ9ClassInFlattenedClassCacheWithSigName()">
<meta name="keywords" content="isRomClassAValueType()">
<meta name="keywords" content="isRomClassAtomic()">
<meta name="keywords" content="isJ9ClassAValueType()">
<meta name="keywords" content="isFieldInClassFlattened()">
<meta name="keywords" content="isFlattenableFieldSignature()">
<meta name="keywords" content="isJ9ClassLargestAlignmentConstraintDouble()">
<meta name="keywords" content="isJ9ClassLargestAlignmentConstraintReference()">
<meta name="keywords" content="isJ9ClassIsFlattened()">
<meta name="keywords" content="isJ9FieldIsFlattened()">
<meta name="keywords" content="classRequires4BytePrePadding()">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ValueTypeHelper (OpenJ9 JDK 11)";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":9,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../index.html">Overview</a></li>
<li><a href="../../../../../../module-summary.html">Module</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ValueTypeHelper.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><div style="margin-top: 9px;"><strong>OpenJ9 JDK 11</strong></div></div>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="moduleLabelInType">Module</span>&nbsp;<a href="../../../../../../module-summary.html">openj9.dtfj</a></div>
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.ibm.j9ddr.vm29.pointer.helper</a></div>
<h2 title="Class ValueTypeHelper" class="title">Class ValueTypeHelper</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink" target="_blank">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>com.ibm.j9ddr.vm29.pointer.helper.ValueTypeHelper</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<pre>public class <span class="typeNameLabel">ValueTypeHelper</span>
extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink" target="_blank">Object</a></pre>
<div class="block">Value type helper class
areValueTypesSupported() must return true before using any other methods in this class</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.logging/java/util/logging/Logger.html?is-external=true" title="class or interface in java.util.logging" class="externalLink" target="_blank">Logger</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#logger">logger</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#areValueTypesSupported()">areValueTypesSupported</a></span>()</code></th>
<td class="colLast">
<div class="block">Queries if the JVM that produced the core file supports value types.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#classRequires4BytePrePadding(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer)">classRequires4BytePrePadding</a></span>&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz)</code></th>
<td class="colLast">
<div class="block">Queries if class is has 4byte pre-padding in the stand-alone case</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#findJ9ClassInFlattenedClassCacheWithFieldName(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer,java.lang.String)">findJ9ClassInFlattenedClassCacheWithFieldName</a></span>&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink" target="_blank">String</a>&nbsp;fieldName)</code></th>
<td class="colLast">
<div class="block">Searches the flattenedClassCache (FCC) for a J9Class given a field name.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#findJ9ClassInFlattenedClassCacheWithSigName(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer,java.lang.String)">findJ9ClassInFlattenedClassCacheWithSigName</a></span>&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink" target="_blank">String</a>&nbsp;fieldSig)</code></th>
<td class="colLast">
<div class="block">Searches the flattenedClassCache (FCC) for a J9Class given a field signature.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#findNestedClassHierarchy(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer,java.lang.String%5B%5D)">findNestedClassHierarchy</a></span>&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;containerClazz,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink" target="_blank">String</a>[]&nbsp;nestingHierarchy)</code></th>
<td class="colLast">
<div class="block">Returns an array of J9ClassPointers that contains the containerClazz passed in addition to the J9ClassPointers
that correspond to the types of the field names passed in the nestingHierarchy array.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>static <a href="ValueTypeHelper.html" title="class in com.ibm.j9ddr.vm29.pointer.helper">ValueTypeHelper</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getValueTypeHelper()">getValueTypeHelper</a></span>()</code></th>
<td class="colLast">
<div class="block">Factory method that returns a valueTypeHelper instance.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isFieldInClassFlattened(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer,com.ibm.j9ddr.vm29.pointer.generated.J9ROMFieldShapePointer)">isFieldInClassFlattened</a></span>&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz,
com.ibm.j9ddr.vm29.pointer.generated.J9ROMFieldShapePointer&nbsp;fieldShape)</code></th>
<td class="colLast">
<div class="block">Queries whether field is flattened of not.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isFlattenableFieldSignature(java.lang.String)">isFlattenableFieldSignature</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink" target="_blank">String</a>&nbsp;signature)</code></th>
<td class="colLast">
<div class="block">Queries if field signature is flattenable</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isJ9ClassAValueType(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer)">isJ9ClassAValueType</a></span>&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz)</code></th>
<td class="colLast">
<div class="block">Queries if J9Class is a value type</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isJ9ClassIsFlattened(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer)">isJ9ClassIsFlattened</a></span>&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz)</code></th>
<td class="colLast">
<div class="block">Queries if class is flattened</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isJ9ClassLargestAlignmentConstraintDouble(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer)">isJ9ClassLargestAlignmentConstraintDouble</a></span>&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz)</code></th>
<td class="colLast">
<div class="block">Queries if class contains a field with a double (64 bit) alignment constraint</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isJ9ClassLargestAlignmentConstraintReference(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer)">isJ9ClassLargestAlignmentConstraintReference</a></span>&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz)</code></th>
<td class="colLast">
<div class="block">Queries if class contains a field with a reference alignment constraint</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isJ9FieldIsFlattened(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer,com.ibm.j9ddr.vm29.pointer.generated.J9ROMFieldShapePointer)">isJ9FieldIsFlattened</a></span>&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;fieldClazz,
com.ibm.j9ddr.vm29.pointer.generated.J9ROMFieldShapePointer&nbsp;fieldShape)</code></th>
<td class="colLast">
<div class="block">Queries if a field in a class is flattened</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isRomClassAtomic(com.ibm.j9ddr.vm29.pointer.generated.J9ROMClassPointer)">isRomClassAtomic</a></span>&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ROMClassPointer&nbsp;romClass)</code></th>
<td class="colLast">
<div class="block">Queries if a J9ROMClass is atomic</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isRomClassAValueType(com.ibm.j9ddr.vm29.pointer.generated.J9ROMClassPointer)">isRomClassAValueType</a></span>&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ROMClassPointer&nbsp;romClass)</code></th>
<td class="colLast">
<div class="block">Queries if J9ROMClass is a value type</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods declared in class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink" target="_blank">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink" target="_blank">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink" target="_blank">equals</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink" target="_blank">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink" target="_blank">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink" target="_blank">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink" target="_blank">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink" target="_blank">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink" target="_blank">toString</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink" target="_blank">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink" target="_blank">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink" target="_blank">wait</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a id="logger">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>logger</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.logging/java/util/logging/Logger.html?is-external=true" title="class or interface in java.util.logging" class="externalLink" target="_blank">Logger</a> logger</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="getValueTypeHelper()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getValueTypeHelper</h4>
<pre class="methodSignature">public static&nbsp;<a href="ValueTypeHelper.html" title="class in com.ibm.j9ddr.vm29.pointer.helper">ValueTypeHelper</a>&nbsp;getValueTypeHelper()</pre>
<div class="block">Factory method that returns a valueTypeHelper instance.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>valueTypeHelper</dd>
</dl>
</li>
</ul>
<a id="areValueTypesSupported()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>areValueTypesSupported</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;areValueTypesSupported()</pre>
<div class="block">Queries if the JVM that produced the core file supports value types. This
must be called before any other ValueTypeHelper functions are called.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if value types are supported, false otherwise</dd>
</dl>
</li>
</ul>
<a id="findJ9ClassInFlattenedClassCacheWithFieldName(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer,java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>findJ9ClassInFlattenedClassCacheWithFieldName</h4>
<pre class="methodSignature">public&nbsp;com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;findJ9ClassInFlattenedClassCacheWithFieldName&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink" target="_blank">String</a>&nbsp;fieldName)
throws <a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></pre>
<div class="block">Searches the flattenedClassCache (FCC) for a J9Class given a field name.
areValueTypesSupported() must return true before using this method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clazz</code> - J9Class pointer that owns the FCC to be searched</dd>
<dd><code>fieldName</code> - name of the field to lookup in the FCC</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>J9Class of the fieldName if found, J9ClassPointer.NULL otherwise</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a id="findNestedClassHierarchy(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer,java.lang.String[])">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>findNestedClassHierarchy</h4>
<pre class="methodSignature">public&nbsp;com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer[]&nbsp;findNestedClassHierarchy&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;containerClazz,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink" target="_blank">String</a>[]&nbsp;nestingHierarchy)
throws <a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></pre>
<div class="block">Returns an array of J9ClassPointers that contains the containerClazz passed in addition to the J9ClassPointers
that correspond to the types of the field names passed in the nestingHierarchy array. Each subsequent
field name in the nestingHierarchy array is a nested field of the previous element. For example
nestingHierarchy[1] is a member of nestingHierarchy[0], and nestingHierarchy[2] is a member of
nestingHierarchy[1]. nestingHierarchy[0] is the first nested member in the containerClazz. The resulting array contains
at least one element (containerClazz).
areValueTypesSupported() must return true before using this method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>containerClazz</code> - type that contains all the nested members</dd>
<dd><code>nestingHierarchy</code> - array that contains field names for nested members. Must be non-NULL</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an array containing at least the containerClazz, and J9ClassPointer's corresponding to the names passed in the nestingHierarchy</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a id="findJ9ClassInFlattenedClassCacheWithSigName(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer,java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>findJ9ClassInFlattenedClassCacheWithSigName</h4>
<pre class="methodSignature">public&nbsp;com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;findJ9ClassInFlattenedClassCacheWithSigName&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink" target="_blank">String</a>&nbsp;fieldSig)
throws <a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></pre>
<div class="block">Searches the flattenedClassCache (FCC) for a J9Class given a field signature.
areValueTypesSupported() must return true before using this method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clazz</code> - J9Class pointer that owns the FCC to be searched</dd>
<dd><code>fieldSig</code> - signature to lookup in the FCC</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>J9ClassPointer corresponding to the signature if found, J9ClassPointer.NULL otherwise</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a id="isRomClassAValueType(com.ibm.j9ddr.vm29.pointer.generated.J9ROMClassPointer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRomClassAValueType</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isRomClassAValueType&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ROMClassPointer&nbsp;romClass)
throws <a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></pre>
<div class="block">Queries if J9ROMClass is a value type</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>romClass</code> - clazz to query</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if romClass is a value type, false otherwise</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a id="isRomClassAtomic(com.ibm.j9ddr.vm29.pointer.generated.J9ROMClassPointer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRomClassAtomic</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isRomClassAtomic&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ROMClassPointer&nbsp;romClass)
throws <a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></pre>
<div class="block">Queries if a J9ROMClass is atomic</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>romClass</code> - class to query</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the romClass is atomic, false otherwise.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a id="isJ9ClassAValueType(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isJ9ClassAValueType</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isJ9ClassAValueType&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz)
throws <a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></pre>
<div class="block">Queries if J9Class is a value type</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clazz</code> - clazz to query</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if class is a value type, false otherwise</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a id="isFieldInClassFlattened(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer,com.ibm.j9ddr.vm29.pointer.generated.J9ROMFieldShapePointer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isFieldInClassFlattened</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isFieldInClassFlattened&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz,
com.ibm.j9ddr.vm29.pointer.generated.J9ROMFieldShapePointer&nbsp;fieldShape)
throws <a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></pre>
<div class="block">Queries whether field is flattened of not.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clazz</code> - clazz containing the field</dd>
<dd><code>fieldShape</code> - J9ROMFieldShapePointer</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if field is flattened, false otherwise</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a id="isFlattenableFieldSignature(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isFlattenableFieldSignature</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isFlattenableFieldSignature&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink" target="_blank">String</a>&nbsp;signature)</pre>
<div class="block">Queries if field signature is flattenable</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>signature</code> - field signature</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if field signature is flattenable, false otherwise</dd>
</dl>
</li>
</ul>
<a id="isJ9ClassLargestAlignmentConstraintDouble(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isJ9ClassLargestAlignmentConstraintDouble</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isJ9ClassLargestAlignmentConstraintDouble&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz)
throws <a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></pre>
<div class="block">Queries if class contains a field with a double (64 bit) alignment constraint</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clazz</code> - J9Class</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if clazz has double alignment constraint, false otherwise</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a id="isJ9ClassLargestAlignmentConstraintReference(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isJ9ClassLargestAlignmentConstraintReference</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isJ9ClassLargestAlignmentConstraintReference&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz)
throws <a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></pre>
<div class="block">Queries if class contains a field with a reference alignment constraint</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clazz</code> - J9Class</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if clazz has reference alignment constraint, false otherwise</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a id="isJ9ClassIsFlattened(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isJ9ClassIsFlattened</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isJ9ClassIsFlattened&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz)
throws <a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></pre>
<div class="block">Queries if class is flattened</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clazz</code> - J9Class</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if clazz is flattened, false otherwise</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a id="isJ9FieldIsFlattened(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer,com.ibm.j9ddr.vm29.pointer.generated.J9ROMFieldShapePointer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isJ9FieldIsFlattened</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isJ9FieldIsFlattened&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;fieldClazz,
com.ibm.j9ddr.vm29.pointer.generated.J9ROMFieldShapePointer&nbsp;fieldShape)
throws <a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></pre>
<div class="block">Queries if a field in a class is flattened</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fieldClazz</code> - J9Class of the field</dd>
<dd><code>fieldShape</code> - J9ROMFieldShapePointer</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the field is flattened, false otherwise</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
<a id="classRequires4BytePrePadding(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>classRequires4BytePrePadding</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;classRequires4BytePrePadding&#8203;(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer&nbsp;clazz)
throws <a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></pre>
<div class="block">Queries if class is has 4byte pre-padding in the stand-alone case</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>clazz</code> - J9Class</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if clazz is requires pre-padding, false otherwise</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../CorruptDataException.html" title="class in com.ibm.j9ddr">CorruptDataException</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../index.html">Overview</a></li>
<li><a href="../../../../../../module-summary.html">Module</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ValueTypeHelper.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><div style="margin-top: 9px;"><strong>OpenJ9 JDK 11</strong></div></div>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small><a href="https://www.eclipse.org/openj9/" target="_blank">Eclipse OpenJ9 website.</a><br> To raise a bug report or suggest an improvement create an <a href="https://github.com/eclipse-openj9/openj9/issues" target="_blank">Eclipse Openj9 issue.</a><br> Copyright &copy; 1998, 2022, IBM Corp. and others.</small></p>
</footer>
</body>
</html>