public abstract class SignatureIterator
extends java.lang.Object
SignatureIterators iterate over a Java signature (or parts of it). (Syntax according to: "The Java Virtual Machine Specification" by Tim Lindholm & Frank Yellin; section 4.3 Descriptors; p. 89ff.)
Example: Iterating over
([Lfoo;D)I 0123456789using
iterateParameters() calls: do_array(2, 7); do_double(); iterateReturntype() calls: do_int(); iterate() calls: do_array(2, 7); do_double(); do_int(); is_returnType() is: false ; false ; true
Modifier and Type | Field and Description |
---|---|
protected int |
_index |
protected int |
_parameter_index |
protected Symbol |
_signature |
Constructor and Description |
---|
SignatureIterator(Symbol signature) |
Modifier and Type | Method and Description |
---|---|
protected void |
checkSignatureEnd() |
void |
dispatchField() |
abstract void |
doArray(int begin,
int end) |
abstract void |
doBool() |
abstract void |
doByte() |
abstract void |
doChar() |
abstract void |
doDouble() |
abstract void |
doFloat() |
abstract void |
doInt() |
abstract void |
doLong() |
abstract void |
doObject(int begin,
int end) |
abstract void |
doShort() |
abstract void |
doVoid() |
protected void |
expect(char c) |
boolean |
isReturnType() |
void |
iterate() |
void |
iterateParameters() |
void |
iterateReturntype() |
int |
parameterIndex() |
protected int |
parseType() |
protected void |
skipOptionalSize() |
protected Symbol _signature
protected int _index
protected int _parameter_index
public SignatureIterator(Symbol signature)
protected void expect(char c)
protected void skipOptionalSize()
protected int parseType()
protected void checkSignatureEnd()
public void dispatchField()
public void iterateParameters()
public void iterateReturntype()
public void iterate()
public int parameterIndex()
public boolean isReturnType()
public abstract void doBool()
public abstract void doChar()
public abstract void doFloat()
public abstract void doDouble()
public abstract void doByte()
public abstract void doShort()
public abstract void doInt()
public abstract void doLong()
public abstract void doVoid()
public abstract void doObject(int begin, int end)
public abstract void doArray(int begin, int end)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.