java.lang.Object
de.grogra.xl.query.Pattern
de.grogra.xl.compiler.pattern.PatternWrapper
- All Implemented Interfaces:
Member
,Signature
,BytecodeSerialization.Serializable
-
Nested Class Summary
Nested classes/interfaces inherited from class de.grogra.xl.query.Pattern
Pattern.Matcher
-
Field Summary
Fields inherited from class de.grogra.xl.query.Pattern
CONTEXT_MASK, INPUT_MASK, NODE_MASK, NULL_MATCHER, OUTPUT_MASK
Fields inherited from interface de.grogra.reflect.Member
ABSTRACT, ACCESS_MODIFIERS, ARRAY, BRIDGE, CONSTANT, FINAL, INTERFACE, JAVA_MODIFIERS, LOCAL_CLASS, MIN_UNUSED_MODIFIER, NATIVE, PRIVATE, PROTECTED, PUBLIC, STATIC, STRICT, SYNCHRONIZED, SYNTHETIC, TRANSIENT, VARARGS, VOLATILE
-
Constructor Summary
ConstructorDescriptionPatternWrapper
(Type predType, Type nameType, Type[] paramTypes, int in, int out) -
Method Summary
Modifier and TypeMethodDescriptioncreateMatcher
(Graph src, XBitSet providedConstants, IntList neededConstantsOut) getDeclaredAnnotation
(int index) int
Returns the declaring type of which this is a member.Returns a descriptor for this member.int
int
Returns the modifiers of this member as a combination of the bit masks which are defined in this interface.getName()
Returns the name of this member.int
int
getParameterKind
(int index) Returns the simple name of this member.boolean
boolean
void
Methods inherited from class de.grogra.xl.query.Pattern
getDeclaredParameterCount, getParameterCount, getParameterType, paramString, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface de.grogra.reflect.Signature
getParameterCount, getParameterType
-
Constructor Details
-
PatternWrapper
-
-
Method Details
-
write
- Specified by:
write
in interfaceBytecodeSerialization.Serializable
- Throws:
IOException
-
getPatternType
-
isFirstInOut
public boolean isFirstInOut() -
getInParameter
public int getInParameter() -
getOutParameter
public int getOutParameter() -
createMatcher
public Pattern.Matcher createMatcher(Graph src, XBitSet providedConstants, IntList neededConstantsOut) - Specified by:
createMatcher
in classPattern
-
getParameterKind
public int getParameterKind(int index) - Specified by:
getParameterKind
in classPattern
-
isDeleting
public boolean isDeleting()- Overrides:
isDeleting
in classPattern
-
getModifiers
public int getModifiers()Description copied from interface:Member
Returns the modifiers of this member as a combination of the bit masks which are defined in this interface.- Specified by:
getModifiers
in interfaceMember
- Returns:
- modifiers of this member
-
getDeclaringType
Description copied from interface:Member
Returns the declaring type of which this is a member. May benull
if such a type does not exist.- Specified by:
getDeclaringType
in interfaceMember
- Returns:
- this member's declaring type
-
getName
Description copied from interface:Member
Returns the name of this member. For types, this is the canonical name of the type, e.g,java.lang.Object
,java.util.Map.Entry
. Otherwise, it equalsMember.getSimpleName()
. -
getSimpleName
Description copied from interface:Member
Returns the simple name of this member. This is the single identifier with which the member is declared in source code, e.g.,Object
,out
,println
.- Specified by:
getSimpleName
in interfaceMember
- Returns:
- simple name of the member
-
getDescriptor
Description copied from interface:Member
Returns a descriptor for this member. Descriptors are constructed as follows:- For types, descriptors are defined as for the Java Virtual
Machine. For primitive types these are the single characters
'Z', 'B', 'S', 'C', 'I', 'J', 'F', 'D', 'V'
for
boolean
,byte
,short
,char
,int
,long
,float
,double
,void
. For array types, the descriptor is the character '[' plus the descriptor of its component type, e.g.,[[I
forint[][]
. For non-array reference types, the descriptor is the character 'L', followed by the binary name (seeType.getBinaryName()
) of the type, where '.' has to be replaced by '/', followed by ';', e.g.,Ljava/lang/Object;
. - For fields, the descriptor is the character 'f', followed by the
simple name of the field, followed by the character ';', followed
by the descriptor of the field's type. E.g.,
fout;Ljava/io/PrintStream;
for the fieldSystem.out
. - For methods and constructors, the descriptor is the character
'm', followed by the simple name of the method (which is
<init>
for constructors), followed by the characters ';' and '(', followed by the descriptors of the method's parameter types, followed by ')', followed by the descriptor of the return type. E.g.mprintln;(Ljava/lang/String;)V
for the methodPrintStream.println(String)
.
- Specified by:
getDescriptor
in interfaceMember
- Returns:
- the member's descriptor
- For types, descriptors are defined as for the Java Virtual
Machine. For primitive types these are the single characters
'Z', 'B', 'S', 'C', 'I', 'J', 'F', 'D', 'V'
for
-
getDeclaredAnnotationCount
public int getDeclaredAnnotationCount()- Specified by:
getDeclaredAnnotationCount
in interfaceMember
-
getDeclaredAnnotation
- Specified by:
getDeclaredAnnotation
in interfaceMember
-