| Package | Description |
|---|---|
| wyc.builder |
Provides the classes responsible for actually translating WhileyFiles into WyilFiles.
|
| wyc.lang |
Provides core classes for the Abstract Syntax Tree (AST) used to represent Whiley source files.
|
| wyil.builders | |
| wyil.lang |
Provides core classes for representing WYIL modules and bytecodes.
|
| wyil.util | |
| wyil.util.interpreter |
| Modifier and Type | Method and Description |
|---|---|
Type.FunctionOrMethod |
FlowTypeChecker.expandAsEffectiveFunctionOrMethod(Expr src,
WhileyFile.Context context) |
Type.FunctionOrMethod |
FlowTypeChecker.expandAsEffectiveFunctionOrMethod(Type type,
wybs.lang.SyntacticElement element,
WhileyFile.Context context) |
Type.FunctionOrMethod |
FlowTypeChecker.resolveAsType(wyal.lang.WyalFile.Type.FunctionOrMethodOrProperty t,
WhileyFile.Context context) |
| Modifier and Type | Method and Description |
|---|---|
wycc.util.Triple<wybs.lang.NameID,Type.FunctionOrMethod,List<String>> |
FlowTypeChecker.resolveAsFunctionOrMethod(wybs.lang.NameID nid,
List<Type> parameters,
List<String> lifetimeArgs,
WhileyFile.Context context,
wyc.builder.FlowTypeChecker.Environment environment)
Responsible for determining the true type of a method or function being
invoked.
|
wycc.util.Triple<wybs.lang.NameID,Type.FunctionOrMethod,List<String>> |
FlowTypeChecker.resolveAsFunctionOrMethod(String name,
List<Type> parameters,
List<String> lifetimeArgs,
WhileyFile.Context context,
wyc.builder.FlowTypeChecker.Environment environment)
Responsible for determining the true type of a method or function being
invoked.
|
wycc.util.Triple<wybs.lang.NameID,Type.FunctionOrMethod,List<String>> |
FlowTypeChecker.resolveAsFunctionOrMethod(String name,
WhileyFile.Context context,
wyc.builder.FlowTypeChecker.Environment environment)
Responsible for determining the true type of a method or function being
invoked.
|
| Modifier and Type | Field and Description |
|---|---|
Type.FunctionOrMethod |
Expr.AbstractFunctionOrMethod.type |
Type.FunctionOrMethod |
Expr.Lambda.type |
| Modifier and Type | Method and Description |
|---|---|
abstract Type.FunctionOrMethod |
WhileyFile.FunctionOrMethodOrProperty.resolvedType() |
Type.FunctionOrMethod |
Expr.AbstractFunctionOrMethod.result() |
Type.FunctionOrMethod |
Expr.Lambda.result() |
abstract Type.FunctionOrMethod |
Expr.FunctionOrMethodCall.type() |
abstract Type.FunctionOrMethod |
Expr.IndirectFunctionOrMethodCall.type() |
Type.FunctionOrMethod |
Expr.IndirectMethodCall.type() |
Type.FunctionOrMethod |
Expr.IndirectFunctionCall.type() |
| Modifier and Type | Method and Description |
|---|---|
WyilFile.FunctionOrMethodOrProperty |
VerificationConditionGenerator.lookupFunctionOrMethodOrProperty(wybs.lang.NameID name,
Type.FunctionOrMethod fun,
SyntaxTree.Location<?> stmt)
Lookup a given function or method.
|
| Modifier and Type | Interface and Description |
|---|---|
static interface |
Type.Function
Represents the set of all function values.
|
static interface |
Type.Method
Represents the set of all method values.
|
static interface |
Type.Property
Represents the set of all proeprty values.
|
| Modifier and Type | Class and Description |
|---|---|
static class |
Type.Impl.Function
A function type, consisting of a list of zero or more parameters and
a return type.
|
static class |
Type.Impl.FunctionOrMethod |
static class |
Type.Impl.Method |
static class |
Type.Impl.Property |
| Modifier and Type | Method and Description |
|---|---|
Type.FunctionOrMethod |
WyilFile.FunctionOrMethodOrProperty.type() |
Type.FunctionOrMethod |
Constant.FunctionOrMethod.type() |
Type.FunctionOrMethod |
Bytecode.Lambda.type() |
Type.FunctionOrMethod |
Bytecode.IndirectInvoke.type() |
Type.FunctionOrMethod |
Bytecode.Invoke.type() |
| Modifier and Type | Method and Description |
|---|---|
WyilFile.FunctionOrMethodOrProperty |
WyilFile.functionOrMethodOrProperty(String name,
Type.FunctionOrMethod ft)
Looks up a function or method declaration in this WyilFile with the given
name and type; if none exists, returns null.
|
| Constructor and Description |
|---|
FunctionOrMethod(wybs.lang.NameID name,
Type.FunctionOrMethod type,
Collection<Constant> arguments) |
FunctionOrMethod(wybs.lang.NameID name,
Type.FunctionOrMethod type,
Constant... arguments) |
FunctionOrMethod(WyilFile parent,
Collection<Modifier> modifiers,
String name,
Type.FunctionOrMethod type,
wybs.lang.Attribute... attributes) |
FunctionOrMethod(WyilFile parent,
Collection<Modifier> modifiers,
String name,
Type.FunctionOrMethod type,
Collection<wybs.lang.Attribute> attributes) |
FunctionOrMethodOrProperty(WyilFile parent,
Collection<Modifier> modifiers,
String name,
Type.FunctionOrMethod type,
wybs.lang.Attribute... attributes) |
FunctionOrMethodOrProperty(WyilFile parent,
Collection<Modifier> modifiers,
String name,
Type.FunctionOrMethod type,
Collection<wybs.lang.Attribute> attributes) |
IndirectInvoke(Type.FunctionOrMethod type,
int operand,
int[] operands)
Construct an indirect invocation bytecode which assigns to an
optional target register the result from indirectly invoking a
function in a given operand with a given set of parameter operands.
|
Invoke(Type.FunctionOrMethod type,
int[] operands,
wybs.lang.NameID name) |
Lambda(Type.FunctionOrMethod type,
int body,
int[] parameters,
int[] environment)
Create a new lambda bytecode
|
| Modifier and Type | Method and Description |
|---|---|
Type.FunctionOrMethod |
TypeSystem.expandAsFunctionOrMethod(Type type)
Assuming given type is an effective function or method type of some sort,
expand to ensure structure is visible.
|
| Modifier and Type | Method and Description |
|---|---|
Constant[] |
Interpreter.execute(wybs.lang.NameID nid,
Type.FunctionOrMethod sig,
Constant... args)
Execute a function or method identified by a name and type signature with
the given arguments, producing a return value or null (if none).
|
Copyright © 2017. All rights reserved.