}
break;
}
case TryID:
{
ITryNode tryNode = (ITryNode) node;
switch( index )
{
case 0:
{
result = tryNode.getStatementContentsNode();
break;
}
case 1:
{
if ( tryNode.getFinallyNode() != null )
{
result = tryNode.getFinallyNode();
}
else
{
assert ( tryNode.getCatchNodeCount() > 0 );
result = tryNode.getCatchNode(0);
}
break;
}
default:
{
// Note: If the try has a contents and finally nodes,
// they are presented to the CG by getNthChild() as child
// nodes 0 and 1 before the n-ary tail of catch nodes.
if (tryNode.getStatementContentsNode() != null)
index--;
if (tryNode.getFinallyNode() != null)
index--;
result = tryNode.getCatchNode(index);
}
}
break;
}
case NamespaceID: