Var
The subclass of captureset variables with given initial elements
Attributes
- Graph
-
- Supertypes
- Known subtypes
-
class DerivedVarclass BiMappedclass Filteredclass Diffclass HiddenSetclass RefiningVarShow all
Members list
Value members
Concrete methods
If this is a variable, add cs
as a dependent set
If this is a variable, add cs
as a dependent set
Attributes
Add a specific element, assuming it is not already accounted for, and omitting any mapping or filtering, without possibility to backtrack to the underlying capture set.
Add a specific element, assuming it is not already accounted for, and omitting any mapping or filtering, without possibility to backtrack to the underlying capture set.
Attributes
Invoke handler if this set has (or later aquires) the root capability cap
Invoke handler if this set has (or later aquires) the root capability cap
Attributes
- Definition Classes
The elements of this capture set. For capture variables, the elements known so far.
The elements of this capture set. For capture variables, the elements known so far.
Attributes
Invoke handler on the elements to ensure wellformedness of the capture set. The handler might add additional elements to the capture set.
Invoke handler on the elements to ensure wellformedness of the capture set. The handler might add additional elements to the capture set.
Attributes
- Definition Classes
Is this capture set always empty? For unsolved capture veriables, returns always false.
Is this capture set always empty? For unsolved capture veriables, returns always false.
Attributes
Is this capture set constant (i.e. not an unsolved capture variable)? Solved capture variables count as constant.
Is this capture set constant (i.e. not an unsolved capture variable)? Solved capture variables count as constant.
Attributes
Is this set provisionally solved, so that another cc run might unfreeze it?
Is this set provisionally solved, so that another cc run might unfreeze it?
Attributes
Mark set as solved and propagate this info to all dependent sets
Mark set as solved and propagate this info to all dependent sets
Attributes
Adds variables to the ShownVars context property if that exists, which establishes a record of all variables printed in an error message. Returns variable ids
under -Ycc-debug, and owner/nesting level info under -Yprint-level.
Adds variables to the ShownVars context property if that exists, which establishes a record of all variables printed in an error message. Returns variable ids
under -Ycc-debug, and owner/nesting level info under -Yprint-level.
Attributes
- Definition Classes
An optional owner, or NoSymbol if none exists. Used for diagnstics
An optional owner, or NoSymbol if none exists. Used for diagnstics
Attributes
- Definition Classes
Reset dependent sets to what was recorded in state
Reset dependent sets to what was recorded in state
Attributes
Reset elements to what was recorded in state
Reset elements to what was recorded in state
Attributes
Widen the variable's elements to its upper approximation and mark it as constant from now on. This is used for contra-variant type variables in the results of defs and vals.
Widen the variable's elements to its upper approximation and mark it as constant from now on. This is used for contra-variant type variables in the results of defs and vals.
Attributes
Returns a string representation of the object.
Returns a string representation of the object.
The default representation is platform dependent.
Attributes
- Returns
-
a string representation of the object.
- Definition Classes
-
Any
Roughly: the intersection of all constant known supersets of this set. The aim is to find an as-good-as-possible constant set that is a superset of this set. The universal set {cap} is a sound fallback.
Roughly: the intersection of all constant known supersets of this set. The aim is to find an as-good-as-possible constant set that is a superset of this set. The universal set {cap} is a sound fallback.
Attributes
This capture set with a description that tells where it comes from
This capture set with a description that tells where it comes from
Attributes
Inherited methods
The largest capture set (via <:<) that is a subset of both this
and that
The largest capture set (via <:<) that is a subset of both this
and that
Attributes
- Inherited from:
- CaptureSet
The smallest superset (via <:<) of this capture set that also contains ref
.
The smallest superset (via <:<) of this capture set that also contains ref
.
Attributes
- Inherited from:
- CaptureSet
Attributes
- Inherited from:
- CaptureSet
The smallest capture set (via <:<) that is a superset of both this
and that
The smallest capture set (via <:<) that is a superset of both this
and that
Attributes
- Inherited from:
- CaptureSet
The largest subset (via <:<) of this capture set that does not account for ref
The largest subset (via <:<) of this capture set that does not account for ref
Attributes
- Inherited from:
- CaptureSet
The largest subset (via <:<) of this capture set that does not account for any of the elements in the constant capture set that
The largest subset (via <:<) of this capture set that does not account for any of the elements in the constant capture set that
Attributes
- Inherited from:
- CaptureSet
Two capture sets are considered =:= equal if they mutually subcapture each other in a frozen state.
Two capture sets are considered =:= equal if they mutually subcapture each other in a frozen state.
Attributes
- Inherited from:
- CaptureSet
{x} <:< this where <:< is subcapturing, but treating all variables as frozen.
{x} <:< this where <:< is subcapturing, but treating all variables as frozen.
Attributes
- Inherited from:
- CaptureSet
Convert to Const. @pre: isConst
Cast to variable. @pre: !isConst
Attributes
- Inherited from:
- CaptureSet
Does this capture set contain a root reference cap
or cap.rd
as element?
Does this capture set contain a root reference cap
or cap.rd
as element?
Attributes
- Inherited from:
- CaptureSet
A fallback text representation, if the pattern matching in Printers does not have a case for this showable element
A fallback text representation, if the pattern matching in Printers does not have a case for this showable element
Attributes
- Inherited from:
- Showable
The largest subset (via <:<) of this capture set that only contains elements for which p
is true.
The largest subset (via <:<) of this capture set that only contains elements for which p
is true.
Attributes
- Inherited from:
- CaptureSet
Attributes
- Inherited from:
- CaptureSet
Is this capture set definitely non-empty?
Attributes
- Inherited from:
- CaptureSet
Does this capture set contain the root reference cap
as element?
Does this capture set contain the root reference cap
as element?
Attributes
- Inherited from:
- CaptureSet
Attributes
- Inherited from:
- CaptureSet
Capture set obtained by applying tm
to all elements of the current capture set and joining the results. If the current capture set is a variable we handle this as follows:
Capture set obtained by applying tm
to all elements of the current capture set and joining the results. If the current capture set is a variable we handle this as follows:
- If the map is a BiTypeMap, the same transformation is applied to all future additions of new elements. We try to fuse with previous maps to avoid long paths of BiTypeMapped sets.
- If the map is some other map that maps the current set of elements to itself, return the current var. We implicitly assume that the map will also map any elements added in the future to themselves. This assumption can be tested to hold by setting the ccConfig.checkSkippedMaps setting to true.
- If the map is some other map that does not map all elements to themselves, freeze the current set (i.e. make it porvisionally solved) and return the mapped elements as a constant set.
Attributes
- Inherited from:
- CaptureSet
Attributes
- Inherited from:
- CaptureSet
A more optimistic version of accountsFor, which does not take variable supersets of the x
reference into account. A set might account for x
if it accounts for x
in a state where we assume all supersets of x
have just the elements known at this point. On the other hand if x's capture set has no known elements, a set cs
might account for x
only if it subsumes x
or it contains the root capability cap
.
A more optimistic version of accountsFor, which does not take variable supersets of the x
reference into account. A set might account for x
if it accounts for x
in a state where we assume all supersets of x
have just the elements known at this point. On the other hand if x's capture set has no known elements, a set cs
might account for x
only if it subsumes x
or it contains the root capability cap
.
Attributes
- Inherited from:
- CaptureSet
A more optimistic version of subCaptures used to choose one of two typing rules for selections and applications. cs1 mightSubcapture cs2
if cs2
might account for every element currently known to be in cs1
, and the same is not true in reverse when we compare elements of cs2 vs cs1.
A more optimistic version of subCaptures used to choose one of two typing rules for selections and applications. cs1 mightSubcapture cs2
if cs2
might account for every element currently known to be in cs1
, and the same is not true in reverse when we compare elements of cs2 vs cs1.
Attributes
- Inherited from:
- CaptureSet
Apply function f
to the elements. Typically used for printing. Overridden in HiddenSet so that we don't run into infinite recursions
Apply function f
to the elements. Typically used for printing. Overridden in HiddenSet so that we don't run into infinite recursions
Attributes
- Inherited from:
- CaptureSet
Attributes
- Inherited from:
- CaptureSet
The string representation of this showable element.
The string representation with each line after the first one indented by the given given margin (in spaces).
The string representation with each line after the first one indented by the given given margin (in spaces).
Attributes
- Inherited from:
- Showable
The summarized string representation of this showable element. Recursion depth is limited to some smallish value. Default is Config.summarizeDepth.
The summarized string representation of this showable element. Recursion depth is limited to some smallish value. Default is Config.summarizeDepth.
Attributes
- Inherited from:
- Showable
The subcapturing test, using a given VarState
The subcapturing test, taking an explicit VarState.
A mapping resulting from substituting parameters of a BindingType to a list of types
A mapping resulting from substituting parameters of a BindingType to a list of types
Attributes
- Inherited from:
- CaptureSet
Convert to Const with current elements unconditionally
A regular @retains or @retainsByName annotation with the elements of this set as arguments.
A regular @retains or @retainsByName annotation with the elements of this set as arguments.
Attributes
- Inherited from:
- CaptureSet
The text representation of this showable element. This normally dispatches to a pattern matching method in Printers.
The text representation of this showable element. This normally dispatches to a pattern matching method in Printers.
Attributes
- Definition Classes
- Inherited from:
- CaptureSet
Concrete fields
The sets currently known to be dependent sets (i.e. new additions to this set are propagated to these dependent sets.)
The sets currently known to be dependent sets (i.e. new additions to this set are propagated to these dependent sets.)
Attributes
The provided description (set via withDescription
) for this capture set or else ""
The provided description (set via withDescription
) for this capture set or else ""
Attributes
A unique identification number for diagnostics
A unique identification number for diagnostics
Attributes
An optional level limit, or undefinedLevel if none exists. All elements of the set must be at levels equal or smaller than the level of the set, if it is defined.
An optional level limit, or undefinedLevel if none exists. All elements of the set must be at levels equal or smaller than the level of the set, if it is defined.
Attributes
A handler to be invoked when new elems are added to this set
A handler to be invoked when new elems are added to this set
Attributes
A handler to be invoked if the root reference cap
is added to this set
A handler to be invoked if the root reference cap
is added to this set