public final enum

JavaOperatorType

extends Enum<E extends Enum<E>>
java.lang.Object
   ↳ java.lang.Enum<E extends java.lang.Enum<E>>
     ↳ com.pnfsoftware.jeb.core.units.code.java.JavaOperatorType

Class Overview

Java operator types. Operator types are used to build Java operators.

See Also

Summary

Nested Classes
enum JavaOperatorType.Associativity  
Enum Values
JavaOperatorType  ADD  Arithmetic addition  
JavaOperatorType  AND  Binary and  
JavaOperatorType  CAST_CONVERSION  Special cast type reserved for integer-to-FP and FP-to-integer conversion operations during an IR conversion pass. 
JavaOperatorType  CAST_TO_BOOLEAN  Cast to primitive  
JavaOperatorType  CAST_TO_BYTE  Cast to primitive  
JavaOperatorType  CAST_TO_CHAR  Cast to primitive  
JavaOperatorType  CAST_TO_DOUBLE  Cast to primitive  
JavaOperatorType  CAST_TO_FLOAT  Cast to primitive  
JavaOperatorType  CAST_TO_INT  Cast to primitive  
JavaOperatorType  CAST_TO_LONG  Cast to primitive  
JavaOperatorType  CAST_TO_OBJECT  Generic cast-to-object operator  
JavaOperatorType  CAST_TO_SHORT  Cast to primitive  
JavaOperatorType  CONCAT  Similar to ADD (+), but for strings  
JavaOperatorType  COND_EXP  conditional expression operator: p ? a: b  
JavaOperatorType  DIV  Arithmetic division  
JavaOperatorType  EQ  Logical equality  
JavaOperatorType  GE  Logical greater-than-or-equal  
JavaOperatorType  GT  Logical greater-than  
JavaOperatorType  INSTANCEOF  Type check  
JavaOperatorType  LE  Logical less-than-or-equal  
JavaOperatorType  LOG_AND  Logical and  
JavaOperatorType  LOG_IDENT  Logical pseudo-identity operator (generally, does not generate output); the opposite of LOG_NOT  
JavaOperatorType  LOG_NOT  Logical not  
JavaOperatorType  LOG_OR  Logical or  
JavaOperatorType  LT  Logical less-than  
JavaOperatorType  MUL  Arithmetic multiplication  
JavaOperatorType  NE  Logical non-equality  
JavaOperatorType  NEG  Arithmetic negation  
JavaOperatorType  NOT  Binary not  
JavaOperatorType  OR  Binary or  
JavaOperatorType  REM  Arithmetic remainder  
JavaOperatorType  SHL  Shift-left (binary shift)  
JavaOperatorType  SHR  Signed shift-right (a.k.a. 
JavaOperatorType  SUB  Arithmetic subtraction  
JavaOperatorType  USHR  Unsigned shift-right (binary shift)  
JavaOperatorType  XOR  Binary xor  
Public Methods
JavaOperatorType.Associativity getAssociativity()
Provide associativity (left, right) information about the operation type.
JavaOperatorType getMirror()
Retrieve the mirror of this operator type.
int getPrecedence()
Provide precedence information about the operation type.
boolean isAnyOf(JavaOperatorType... operatorTypes)
static JavaOperatorType valueOf(String name)
final static JavaOperatorType[] values()
[Expand]
Inherited Methods
From class java.lang.Enum
From class java.lang.Object
From interface java.lang.Comparable

Enum Values

public static final JavaOperatorType ADD

Arithmetic addition

public static final JavaOperatorType AND

Binary and

public static final JavaOperatorType CAST_CONVERSION

Special cast type reserved for integer-to-FP and FP-to-integer conversion operations during an IR conversion pass. Client code should not use this operator.

public static final JavaOperatorType CAST_TO_BOOLEAN

Cast to primitive

public static final JavaOperatorType CAST_TO_BYTE

Cast to primitive

public static final JavaOperatorType CAST_TO_CHAR

Cast to primitive

public static final JavaOperatorType CAST_TO_DOUBLE

Cast to primitive

public static final JavaOperatorType CAST_TO_FLOAT

Cast to primitive

public static final JavaOperatorType CAST_TO_INT

Cast to primitive

public static final JavaOperatorType CAST_TO_LONG

Cast to primitive

public static final JavaOperatorType CAST_TO_OBJECT

Generic cast-to-object operator

public static final JavaOperatorType CAST_TO_SHORT

Cast to primitive

public static final JavaOperatorType CONCAT

Similar to ADD (+), but for strings

public static final JavaOperatorType COND_EXP

conditional expression operator: p ? a: b

public static final JavaOperatorType DIV

Arithmetic division

public static final JavaOperatorType EQ

Logical equality

public static final JavaOperatorType GE

Logical greater-than-or-equal

public static final JavaOperatorType GT

Logical greater-than

public static final JavaOperatorType INSTANCEOF

Type check

public static final JavaOperatorType LE

Logical less-than-or-equal

public static final JavaOperatorType LOG_AND

Logical and

public static final JavaOperatorType LOG_IDENT

Logical pseudo-identity operator (generally, does not generate output); the opposite of LOG_NOT

public static final JavaOperatorType LOG_NOT

Logical not

public static final JavaOperatorType LOG_OR

Logical or

public static final JavaOperatorType LT

Logical less-than

public static final JavaOperatorType MUL

Arithmetic multiplication

public static final JavaOperatorType NE

Logical non-equality

public static final JavaOperatorType NEG

Arithmetic negation

public static final JavaOperatorType NOT

Binary not

public static final JavaOperatorType OR

Binary or

public static final JavaOperatorType REM

Arithmetic remainder

public static final JavaOperatorType SHL

Shift-left (binary shift)

public static final JavaOperatorType SHR

Signed shift-right (a.k.a. "arithmetic" shift-right: the sign bit is copied over)

public static final JavaOperatorType SUB

Arithmetic subtraction

public static final JavaOperatorType USHR

Unsigned shift-right (binary shift)

public static final JavaOperatorType XOR

Binary xor

Public Methods

public JavaOperatorType.Associativity getAssociativity ()

Provide associativity (left, right) information about the operation type.

Returns
  • the associativity, or null if irrelevant

public JavaOperatorType getMirror ()

Retrieve the mirror of this operator type.

 ==   ->  ==
 !=   ->  !=
 >    ->  <
 >=   ->  <=
 <    ->  >
 <=   ->  >=
 
Careful, do not confuse mirror operators and inverse operators. Example: the mirror of GT is LT; the inverse of GT is LE.

Returns
  • a mirror operator type, null if N/A

public int getPrecedence ()

Provide precedence information about the operation type.

Returns
  • a positive value (lower means "higher precedence"), 0 if unknown

public boolean isAnyOf (JavaOperatorType... operatorTypes)

public static JavaOperatorType valueOf (String name)

public static final JavaOperatorType[] values ()