| 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.
|
| Modifier and Type | Method and Description |
|---|---|
Type.EffectiveArray |
FlowTypeChecker.expandAsEffectiveArray(Expr src,
WhileyFile.Context context) |
Type.EffectiveArray |
FlowTypeChecker.expandAsEffectiveArray(Type type,
wybs.lang.SyntacticElement element,
WhileyFile.Context context) |
Type.FunctionOrMethod |
FlowTypeChecker.expandAsEffectiveFunctionOrMethod(Expr src,
WhileyFile.Context context) |
Type.FunctionOrMethod |
FlowTypeChecker.expandAsEffectiveFunctionOrMethod(Type type,
wybs.lang.SyntacticElement element,
WhileyFile.Context context) |
Type.EffectiveRecord |
FlowTypeChecker.expandAsEffectiveRecord(Expr src,
WhileyFile.Context context) |
Type.EffectiveRecord |
FlowTypeChecker.expandAsEffectiveRecord(Type type,
wybs.lang.SyntacticElement element,
WhileyFile.Context context) |
Type.Reference |
FlowTypeChecker.expandAsEffectiveReference(Expr src,
WhileyFile.Context context) |
Type.Reference |
FlowTypeChecker.expandAsEffectiveReference(Type type,
wybs.lang.SyntacticElement element,
WhileyFile.Context context) |
boolean |
CompileTask.hasModifier(wybs.lang.NameID nid,
WhileyFile.Context context,
Modifier modifier)
Determine whether a named item has a modifier matching one of a given
list.
|
boolean |
CompileTask.isNameVisible(wybs.lang.NameID nid,
WhileyFile.Context context)
Determine whether a name is visible in a given context.
|
boolean |
CompileTask.isTypeVisible(wybs.lang.NameID nid,
WhileyFile.Context context)
Determine whether a named type is fully visible in a given context.
|
Expr |
FlowTypeChecker.propagate(Expr expr,
wyc.builder.FlowTypeChecker.Environment environment,
WhileyFile.Context context)
Propagate types through a given expression, whilst checking that it is
well typed.
|
wycc.util.Pair<Expr,wyc.builder.FlowTypeChecker.Environment> |
FlowTypeChecker.propagateCondition(Expr expr,
boolean sign,
wyc.builder.FlowTypeChecker.Environment environment,
WhileyFile.Context context)
Propagate type information through an expression being used as a
condition, whilst checking it is well-typed at the same time.
|
wycc.util.Pair<Constant,Type> |
FlowTypeChecker.resolveAsConstant(Expr e,
WhileyFile.Context context)
Resolve a given constant expression as a constant value.
|
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.
|
wyfs.lang.Path.ID |
CompileTask.resolveAsModule(String name,
WhileyFile.Context context)
This method attempts to resolve a name as a module in a given name
context.
|
wybs.lang.NameID |
CompileTask.resolveAsName(List<String> names,
WhileyFile.Context context)
This methods attempts to resolve the given list of names into a single
named item (e.g.
|
wybs.lang.NameID |
CompileTask.resolveAsName(String name,
WhileyFile.Context context)
Responsible for resolve names, types, constants and functions / methods
at the global level.
|
Type.FunctionOrMethod |
FlowTypeChecker.resolveAsType(wyal.lang.WyalFile.Type.FunctionOrMethodOrProperty t,
WhileyFile.Context context) |
Type.Function |
FlowTypeChecker.resolveAsType(wyal.lang.WyalFile.Type.Function t,
WhileyFile.Context context) |
Type.Method |
FlowTypeChecker.resolveAsType(wyal.lang.WyalFile.Type.Method t,
WhileyFile.Context context) |
Type.Property |
FlowTypeChecker.resolveAsType(wyal.lang.WyalFile.Type.Property t,
WhileyFile.Context context) |
Type |
CompileTask.toSemanticType(wyal.lang.WyalFile.Type type,
WhileyFile.Context context)
Convert a Whiley "syntactic" type into a wyil type.
|
| Modifier and Type | Class and Description |
|---|---|
class |
WhileyFile.Constant
Represents a constant declaration in a Whiley source file, which has the
form:
|
class |
WhileyFile.Function
Represents a function declaration in a Whiley source file.
|
class |
WhileyFile.FunctionOrMethodOrProperty
Represents a function declaration or method declaration in
a Whiley source file which have the form:
|
class |
WhileyFile.Method
Represents a method declaration in a Whiley source file.
|
class |
WhileyFile.NamedDeclaration |
class |
WhileyFile.Parameter
Represents a parameter declaration as part of a function or method
declaration.
|
class |
WhileyFile.Property
Represents a function declaration in a Whiley source file.
|
class |
WhileyFile.Type
Represents a type declaration in a Whiley source file, which has the
form:
|
| Modifier and Type | Method and Description |
|---|---|
static void |
WhileyFile.internalFailure(String msg,
WhileyFile.Context context,
wybs.lang.SyntacticElement elem) |
static void |
WhileyFile.internalFailure(String msg,
WhileyFile.Context context,
wybs.lang.SyntacticElement elem,
Throwable ex) |
static boolean |
Exprs.isPure(Expr expr,
WhileyFile.Context context)
Determine whether this expression is "pure" or not.
|
static void |
WhileyFile.syntaxError(String msg,
WhileyFile.Context context,
wybs.lang.SyntacticElement elem) |
static void |
WhileyFile.syntaxError(String msg,
WhileyFile.Context context,
wybs.lang.SyntacticElement elem,
Throwable ex) |
static HashSet<wycc.util.Pair<Type,String>> |
Exprs.uses(Expr expr,
WhileyFile.Context context)
Determine the set of variable names (and their types) used in a given expression.
|
Copyright © 2017. All rights reserved.