# Interface: com.pnfsoftware.jeb.core.units.code.java.IJavaPredicate

Java AST interface to represent a Java predicate. A predicate is a boolean expression that evaluates to true or false. 

 Note: Currently, logical expressions using non short\-circuiting operators OR \(\|\), AND \(&\), or XOR\(^\) are not allowed.

## Method: duplicate
- return type: `com.pnfsoftware.jeb.core.units.code.java.IJavaPredicate`


## Method: duplicateAndReverse
- parameter: `of`, type: `com.pnfsoftware.jeb.core.units.code.java.IJavaOperatorFactory`
- return type: `com.pnfsoftware.jeb.core.units.code.java.IJavaPredicate`

Description: 
parameter: of: 
return: 

## Method: getExpression
- return type: `com.pnfsoftware.jeb.core.units.code.java.IJavaExpression`

Description: 
return: 

## Method: isLitteralFalse
- return type: `boolean`

Description: Determine if the predicate represents the simple literal value 'false' \( `null IDENT 'false'`\).
return: true if the predicate represents the literal false

## Method: isLitteralTrue
- return type: `boolean`

Description: Determine if the predicate represents the simple literal value 'true' \( `null IDENT 'true'`\).
return: true if the predicate represents the literal true

## Method: reverse
- parameter: `of`, type: `com.pnfsoftware.jeb.core.units.code.java.IJavaOperatorFactory`

Description: Reverse the predicate. Example: "x == 3" becomes "x \!= 3".
parameter: of: operator factory

## Method: setExpression
- parameter: `expression`, type: `com.pnfsoftware.jeb.core.units.code.java.IJavaExpression`

Description: 
parameter: expression: 

