Package | Description |
---|---|
org.jboss.byteman.rule | |
org.jboss.byteman.rule.binding | |
org.jboss.byteman.rule.exception | |
org.jboss.byteman.rule.expression | |
org.jboss.byteman.rule.type |
Modifier and Type | Method | Description |
---|---|---|
static Action |
Action.create(Rule rule,
String text) |
|
static Action |
Action.create(Rule rule,
ParseNode actionTree) |
|
static Condition |
Condition.create(Rule rule,
String text) |
|
static Condition |
Condition.create(Rule rule,
ParseNode conditionTree) |
|
static Event |
Event.create(Rule rule,
String text) |
|
static Event |
Event.create(Rule rule,
ParseNode eventTree) |
|
static Rule |
Rule.create(RuleScript ruleScript,
ClassLoader loader,
HelperManager helperManager,
AccessEnabler accessEnabler) |
|
Binding |
Event.createBinding(ParseNode varTree) |
|
void |
Rule.setAction(String actionSpec) |
|
void |
Rule.setCondition(String conditionSpec) |
|
void |
Rule.setEvent(String eventSpec) |
|
Type |
Action.typeCheck(Type expected) |
|
Type |
Condition.typeCheck(Type expected) |
|
Type |
Event.typeCheck(Type expected) |
|
void |
Rule.typeCheck() |
type check this rule
|
abstract Type |
RuleElement.typeCheck(Type expected) |
Constructor | Description |
---|---|
Action(Rule rule,
ParseNode actionTree) |
|
Condition(Rule rule,
ParseNode conditionTree) |
|
Event(Rule rule,
ParseNode eventTree) |
Modifier and Type | Method | Description |
---|---|---|
Type |
Binding.typeCheck(Type expected) |
Modifier and Type | Class | Description |
---|---|---|
class |
TypeWarningException |
A sepcialization of TypeException which can be thrown during type checking to indicate that
a rule has failed to type check for a legitimate reason.
|
Modifier and Type | Method | Description |
---|---|---|
void |
ArrayExpression.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
ArrayInitExpression.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
AssignExpression.bind() |
|
void |
BinaryOperExpression.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
ClassLiteralExpression.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
DollarExpression.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
DollarExpression.bind(boolean isUpdateable) |
|
abstract void |
Expression.bind() |
verify that variables mentioned in this expression are actually available in the rule
bindings list
|
void |
FieldExpression.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
MethodExpression.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
NewExpression.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list
|
void |
NumericLiteral.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
ReturnExpression.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
StaticExpression.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
TernaryOperExpression.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
ThrowExpression.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
UnaryOperExpression.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
Variable.bind() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list and infer/validate the type of this expression or its subexpressions
where possible
|
void |
ArrayExpression.bindAssign() |
|
abstract void |
AssignableExpression.bindAssign() |
bind as an assignable expression.
|
void |
DollarExpression.bindAssign() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list.
|
void |
FieldExpression.bindAssign() |
treat this as a normal bind because an update to a field reference does not update any bindings
|
void |
StaticExpression.bindAssign() |
treat this as a normal bind because an update to a field reference does not update any bindings
|
void |
Variable.bindAssign() |
verify that variables mentioned in this expression are actually available in the supplied
bindings list.
|
static ArrayInitExpression |
ExpressionHelper.createArrayInitExpression(Rule rule,
Bindings bindings,
ParseNode exprTree,
Type type) |
|
static AssignableExpression |
ExpressionHelper.createAssignableExpression(Rule rule,
Bindings bindings,
ParseNode exprTree,
Type type) |
|
static Expression |
ExpressionHelper.createBinaryExpression(Rule rule,
Bindings bindings,
ParseNode exprTree,
Type type) |
|
static Expression |
ExpressionHelper.createCallExpression(Rule rule,
Bindings bindings,
ParseNode selectorTree,
ParseNode recipientTree,
ParseNode argTree,
Type type) |
|
static Expression |
ExpressionHelper.createClassLiteralExpression(Rule rule,
Bindings bindings,
ParseNode pathTree,
Type type) |
|
static Expression |
ExpressionHelper.createExpression(Rule rule,
Bindings bindings,
ParseNode exprTree) |
|
static Expression |
ExpressionHelper.createExpression(Rule rule,
Bindings bindings,
ParseNode exprTree,
Type type) |
|
static List<Expression> |
ExpressionHelper.createExpressionList(Rule rule,
Bindings bindings,
ParseNode exprTree) |
|
static List<Expression> |
ExpressionHelper.createExpressionList(Rule rule,
Bindings bindings,
ParseNode exprTree,
Type type) |
|
static AssignableExpression |
ExpressionHelper.createFieldExpression(Rule rule,
Bindings bindings,
ParseNode fieldTree,
ParseNode targetTree,
Type type) |
|
static List<Expression> |
ExpressionHelper.createNewArrayDimsList(Rule rule,
Bindings bindings,
ParseNode exprTree) |
|
static Expression |
ExpressionHelper.createNewExpression(Rule rule,
Bindings bindings,
ParseNode typeNameTree,
ParseNode argTree,
ParseNode arrayDimsTree) |
|
Class<?>[] |
ThrowExpression.createParamTypes(String descriptor,
ClassLoader loader) |
|
static Expression |
ExpressionHelper.createTernaryExpression(Rule rule,
Bindings bindings,
ParseNode exprTree,
Type type) |
|
static Expression |
ExpressionHelper.createThrowExpression(Rule rule,
Bindings bindings,
ParseNode typeNameTree,
ParseNode argTree) |
|
static Expression |
ExpressionHelper.createUnaryExpression(Rule rule,
Bindings bindings,
ParseNode exprTree,
Type type) |
|
Type |
ArithmeticExpression.typeCheck(Type expected) |
|
Type |
ArrayExpression.typeCheck(Type expected) |
|
Type |
ArrayInitExpression.typeCheck(Type expected) |
|
Type |
AssignExpression.typeCheck(Type expected) |
|
Type |
BitExpression.typeCheck(Type expected) |
|
Type |
BooleanLiteral.typeCheck(Type expected) |
|
Type |
ClassLiteralExpression.typeCheck(Type expected) |
|
Type |
ComparisonExpression.typeCheck(Type expected) |
|
Type |
ConditionalEvalExpression.typeCheck(Type expected) |
|
Type |
DollarExpression.typeCheck(Type expected) |
|
abstract Type |
Expression.typeCheck(Type expected) |
ensure that all type references in the expression and its component expressions
can be resolved, that the type of the expression is well-defined and that it is
compatible with the type expected in the context in which it occurs.
|
Type |
FieldExpression.typeCheck(Type expected) |
|
Type |
LogicalExpression.typeCheck(Type expected) |
|
Type |
MethodExpression.typeCheck(Type expected) |
|
Type |
MinusExpression.typeCheck(Type expected) |
|
Type |
NewExpression.typeCheck(Type expected) |
ensure that all type references in the expression and its component expressions
can be resolved, that the type of the expression is well-defined and that it is
compatible with the type expected in the context in which it occurs.
|
Type |
NotExpression.typeCheck(Type expected) |
|
Type |
NullLiteral.typeCheck(Type expected) |
|
Type |
NumericLiteral.typeCheck(Type expected) |
|
Type |
PlusExpression.typeCheck(Type expected) |
|
Type |
ReturnExpression.typeCheck(Type expected) |
ensure that all type references in the expression and its component expressions
can be resolved, that the type of the expression is well-defined and that it is
compatible with the type expected in the context in which it occurs.
|
Type |
ShiftExpression.typeCheck(Type expected) |
|
Type |
StaticExpression.typeCheck(Type expected) |
|
Type |
StringLiteral.typeCheck(Type expected) |
|
Type |
StringPlusExpression.typeCheck(Type expected) |
|
Type |
ThrowExpression.typeCheck(Type expected) |
ensure that all type references in the expression and its component expressions
can be resolved, that the type of the expression is well-defined and that it is
compatible with the type expected in the context in which it occurs.
|
Type |
TwiddleExpression.typeCheck(Type expected) |
|
Type |
Variable.typeCheck(Type expected) |
|
void |
StaticExpression.typeCheckAny(boolean isAssign) |
|
void |
Variable.typeCheckAny() |
|
Type |
ArrayExpression.typeCheckAssign(Type expected) |
|
abstract Type |
AssignableExpression.typeCheckAssign(Type expected) |
typecheck the expression as an lvalue of an assignment operation
|
Type |
DollarExpression.typeCheckAssign(Type expected) |
|
Type |
FieldExpression.typeCheckAssign(Type expected) |
|
Type |
StaticExpression.typeCheckAssign(Type expected) |
|
Type |
Variable.typeCheckAssign(Type expected) |
Constructor | Description |
---|---|
ArithmeticExpression(Rule rule,
int oper,
ParseNode token,
Expression left,
Expression right) |
|
BitExpression(Rule rule,
int oper,
ParseNode token,
Expression left,
Expression right) |
|
ShiftExpression(Rule rule,
int oper,
ParseNode token,
Expression left,
Expression right) |
Modifier and Type | Method | Description |
---|---|---|
static Type |
Type.promote(Type type1,
Type type2) |
compute the type to which a binary arithmetic operator should promote its operands
before combination based on the two operand types which is also the type to be
used for the result of the operation
|
Copyright © 2018. All rights reserved.