public class ReadableReferenceExtractor extends AbstractTypeExtractor<WyalFile.Type.Reference>
Responsible for extracting a "readable reference" from a given type. This is
relatively straightforward. For example, &int is extracted as
&int. However, (&int)|(&bool) is not extracted as
as &(int|bool). It remains unclear whether this can be expanded
to support for flexible readable array types.
Not all types have a readable reference type and, furthermore, care must be
exercised for those that do. For example, (&int)|int does not
have a readable reference type.
AbstractTypeExtractor.Conjunct, AbstractTypeExtractor.Disjunct, AbstractTypeExtractor.Signedresolver, typeSystem| Constructor and Description |
|---|
ReadableReferenceExtractor(wybs.lang.NameResolver resolver,
TypeSystem typeSystem) |
| Modifier and Type | Method and Description |
|---|---|
protected WyalFile.Type.Reference |
construct(WyalFile.Type.Atom type) |
protected WyalFile.Type.Reference |
intersect(WyalFile.Type.Reference lhs,
WyalFile.Type.Reference rhs) |
protected WyalFile.Type.Reference |
subtract(WyalFile.Type.Reference lhs,
WyalFile.Type.Reference rhs) |
protected WyalFile.Type.Reference |
union(WyalFile.Type.Reference lhs,
WyalFile.Type.Reference rhs) |
construct, construct, extract, intersectionHelper, isVoid, toDisjunctiveNormalForm, toDisjunctiveNormalForm, toDisjunctiveNormalForm, toDisjunctiveNormalForm, toDisjunctiveNormalForm, toDisjunctiveNormalForm, toDisjunctiveNormalForm, toDisjunctiveNormalForm, toDisjunctiveNormalForm, toDisjunctiveNormalForm, unionHelperpublic ReadableReferenceExtractor(wybs.lang.NameResolver resolver,
TypeSystem typeSystem)
protected WyalFile.Type.Reference construct(WyalFile.Type.Atom type)
construct in class AbstractTypeExtractor<WyalFile.Type.Reference>protected WyalFile.Type.Reference union(WyalFile.Type.Reference lhs, WyalFile.Type.Reference rhs)
union in class AbstractTypeExtractor<WyalFile.Type.Reference>protected WyalFile.Type.Reference subtract(WyalFile.Type.Reference lhs, WyalFile.Type.Reference rhs)
subtract in class AbstractTypeExtractor<WyalFile.Type.Reference>protected WyalFile.Type.Reference intersect(WyalFile.Type.Reference lhs, WyalFile.Type.Reference rhs)
intersect in class AbstractTypeExtractor<WyalFile.Type.Reference>Copyright © 2017. All rights reserved.