<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>Index (z/OS Language Environment condition handling)</title>
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
<script type="text/javascript" src="script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Index (z/OS Language Environment condition handling)";
        }
    }
    catch(err) {
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="com/ibm/le/conditionhandling/package-summary.html">Package</a></li>
<li>Class</li>
<li>Use</li>
<li><a href="com/ibm/le/conditionhandling/package-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</li>
<li><a href="help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><strong>z/OS Language Environment condition handling</strong></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?index-all.html" target="_top">Frames</a></li>
<li><a href="index-all.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></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>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="contentContainer"><a href="#I:C">C</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a name="I:C">
<!--   -->
</a>
<h2 class="title">C</h2>
<dl>
<dt><a href="com/ibm/le/conditionhandling/package-summary.html">com.ibm.le.conditionhandling</a> - package com.ibm.le.conditionhandling</dt>
<dd>
<div class="block">Support for z/OS Language Environment condition handling.</div>
</dd>
<dt><a href="com/ibm/le/conditionhandling/ConditionException.html" title="class in com.ibm.le.conditionhandling"><span class="typeNameLink">ConditionException</span></a> - Exception in <a href="com/ibm/le/conditionhandling/package-summary.html">com.ibm.le.conditionhandling</a></dt>
<dd>
<div class="block">A ConditionException is used to represent a z/OS Language Environment condition.</div>
</dd>
</dl>
<a name="I:G">
<!--   -->
</a>
<h2 class="title">G</h2>
<dl>
<dt><span class="memberNameLink"><a href="com/ibm/le/conditionhandling/ConditionException.html#getC1--">getC1()</a></span> - Method in exception com.ibm.le.conditionhandling.<a href="com/ibm/le/conditionhandling/ConditionException.html" title="class in com.ibm.le.conditionhandling">ConditionException</a></dt>
<dd>
<div class="block">Returns c_1, as stored in the condition token.</div>
</dd>
<dt><span class="memberNameLink"><a href="com/ibm/le/conditionhandling/ConditionException.html#getC2--">getC2()</a></span> - Method in exception com.ibm.le.conditionhandling.<a href="com/ibm/le/conditionhandling/ConditionException.html" title="class in com.ibm.le.conditionhandling">ConditionException</a></dt>
<dd>
<div class="block">Returns c_2, as stored in the condition token.</div>
</dd>
<dt><span class="memberNameLink"><a href="com/ibm/le/conditionhandling/ConditionException.html#getCase--">getCase()</a></span> - Method in exception com.ibm.le.conditionhandling.<a href="com/ibm/le/conditionhandling/ConditionException.html" title="class in com.ibm.le.conditionhandling">ConditionException</a></dt>
<dd>
<div class="block">Returns the format of c_1 and c_2.</div>
</dd>
<dt><span class="memberNameLink"><a href="com/ibm/le/conditionhandling/ConditionException.html#getControl--">getControl()</a></span> - Method in exception com.ibm.le.conditionhandling.<a href="com/ibm/le/conditionhandling/ConditionException.html" title="class in com.ibm.le.conditionhandling">ConditionException</a></dt>
<dd>
<div class="block">Returns the condition's control field.</div>
</dd>
<dt><span class="memberNameLink"><a href="com/ibm/le/conditionhandling/ConditionException.html#getFacilityID--">getFacilityID()</a></span> - Method in exception com.ibm.le.conditionhandling.<a href="com/ibm/le/conditionhandling/ConditionException.html" title="class in com.ibm.le.conditionhandling">ConditionException</a></dt>
<dd>
<div class="block">Returns the condition's facility ID.</div>
</dd>
<dt><span class="memberNameLink"><a href="com/ibm/le/conditionhandling/ConditionException.html#getISInfo--">getISInfo()</a></span> - Method in exception com.ibm.le.conditionhandling.<a href="com/ibm/le/conditionhandling/ConditionException.html" title="class in com.ibm.le.conditionhandling">ConditionException</a></dt>
<dd>
<div class="block">Returns the condition's ISI.</div>
</dd>
<dt><span class="memberNameLink"><a href="com/ibm/le/conditionhandling/ConditionException.html#getMessageNumber--">getMessageNumber()</a></span> - Method in exception com.ibm.le.conditionhandling.<a href="com/ibm/le/conditionhandling/ConditionException.html" title="class in com.ibm.le.conditionhandling">ConditionException</a></dt>
<dd>
<div class="block">Returns the condition's message number.</div>
</dd>
<dt><span class="memberNameLink"><a href="com/ibm/le/conditionhandling/ConditionException.html#getOffsetInRoutine--">getOffsetInRoutine()</a></span> - Method in exception com.ibm.le.conditionhandling.<a href="com/ibm/le/conditionhandling/ConditionException.html" title="class in com.ibm.le.conditionhandling">ConditionException</a></dt>
<dd>
<div class="block">Returns the offset into the routine that triggered the condition.</div>
</dd>
<dt><span class="memberNameLink"><a href="com/ibm/le/conditionhandling/ConditionException.html#getRoutine--">getRoutine()</a></span> - Method in exception com.ibm.le.conditionhandling.<a href="com/ibm/le/conditionhandling/ConditionException.html" title="class in com.ibm.le.conditionhandling">ConditionException</a></dt>
<dd>
<div class="block">Returns the routine that triggered the condition.</div>
</dd>
<dt><span class="memberNameLink"><a href="com/ibm/le/conditionhandling/ConditionException.html#getSeverity--">getSeverity()</a></span> - Method in exception com.ibm.le.conditionhandling.<a href="com/ibm/le/conditionhandling/ConditionException.html" title="class in com.ibm.le.conditionhandling">ConditionException</a></dt>
<dd>
<div class="block">Returns the condition's severity.</div>
</dd>
<dt><span class="memberNameLink"><a href="com/ibm/le/conditionhandling/ConditionException.html#getToken--">getToken()</a></span> - Method in exception com.ibm.le.conditionhandling.<a href="com/ibm/le/conditionhandling/ConditionException.html" title="class in com.ibm.le.conditionhandling">ConditionException</a></dt>
<dd>
<div class="block">Returns the raw 12-byte representation of the condition.</div>
</dd>
</dl>
<a href="#I:C">C</a>&nbsp;<a href="#I:G">G</a>&nbsp;</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="com/ibm/le/conditionhandling/package-summary.html">Package</a></li>
<li>Class</li>
<li>Use</li>
<li><a href="com/ibm/le/conditionhandling/package-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</li>
<li><a href="help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><strong>z/OS Language Environment condition handling</strong></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?index-all.html" target="_top">Frames</a></li>
<li><a href="index-all.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="allclasses-noframe.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>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<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; 2009, 2021, IBM Corp. and others.</small></p>
</body>
</html>
