| Modifier and Type | Method and Description |
|---|---|
void |
assertNonEmpty()
Checks that this value is non-empty (or polymorphic).
|
void |
cleanupIncludedExcluded(Value r) |
boolean |
containsObjectLabel(ObjectLabel objlabel)
Returns true if this value contains the given object label.
|
void |
diff(Value old,
java.lang.StringBuilder b)
Returns a description of the changes from the old value to this value.
|
boolean |
equals(java.lang.Object obj)
Checks whether the given object is equal to this one.
|
Value |
forgetExcludedIncludedStrings()
Constructs a value from this value but with no excluded or included strings.
|
java.util.Set<java.lang.String> |
getAllKnownStr()
Returns the set of all known strings.
|
java.util.Set<ObjectLabel> |
getAllObjectLabels()
Returns the (immutable) set of object labels.
|
java.util.Set<java.lang.String> |
getExcludedStrings()
Returns the strings that are explicitly excluded, or null if none.
|
java.util.Set<ObjectLabel> |
getGetters()
Returns the (immutable) set of getters.
|
java.util.Set<java.lang.String> |
getIncludedStrings()
Returns the strings that are explicitly included, or null if none.
|
java.lang.Double |
getNum()
Returns the singleton number value, or null if definitely not a singleton number.
|
java.util.Set<ObjectLabel> |
getObjectLabels()
Returns the (immutable) set of object labels (including symbols).
|
ObjectProperty |
getObjectProperty()
Returns the object property.
|
java.util.Set<SourceLocation> |
getObjectSourceLocations()
Returns the source locations of the objects and symbols in this value.
|
java.lang.String |
getPrefix()
Returns the prefix value.
|
java.util.Set<ObjectLabel> |
getSetters()
Returns the (immutable) set of setters.
|
java.lang.String |
getStr()
Returns the singleton string value.
|
java.util.Set<ObjectLabel> |
getSymbols()
Returns the (immutable) set of object labels representing symbols.
|
boolean |
hasDontDelete()
Returns true if this value has DontDelete information.
|
boolean |
hasDontEnum()
Returns true if this value has DontEnum information.
|
int |
hashCode()
Returns the hash code for this value.
|
boolean |
hasReadOnly()
Returns true if this value has ReadOnly information.
|
boolean |
isDontDelete()
Returns true is this value belongs to a property which definitely has DontDelete set.
|
boolean |
isDontEnum()
Returns true is this value belongs to a property which definitely has DontEnum set.
|
boolean |
isExtendedScope()
Returns true if this value is marked as having extended scope.
|
boolean |
isInf()
Returns true if this value is definitely infinite.
|
boolean |
isMaybeAbsent()
Returns true if this value belongs to a maybe absent property.
|
boolean |
isMaybeAllKnownStr()
Returns true if the value contains only known strings (possibly beside values of other type).
|
boolean |
isMaybeAnyBool()
Returns true if this value is maybe any boolean.
|
boolean |
isMaybeAnyNum()
Returns true if this value is maybe any number.
|
boolean |
isMaybeAnyNumNotNaNInf()
Returns true if this value is maybe any number but not NaN or infinite.
|
boolean |
isMaybeAnyStr()
Returns true if this value is maybe any string (ignoring excluded strings).
|
boolean |
isMaybeDontDelete()
Returns true is this value belongs to a property which maybe has DontDelete set.
|
boolean |
isMaybeDontEnum()
Returns true is this value belongs to a property which maybe has DontEnum set.
|
boolean |
isMaybeFalse()
Returns true if this value is maybe false.
|
boolean |
isMaybeFalseButNotTrue()
Returns true if this value is maybe false but not true.
|
boolean |
isMaybeFuzzyNum()
Returns true if this value is maybe a non-singleton number or NaN or +/-Inf.
|
boolean |
isMaybeFuzzyStr()
Returns true if this value is maybe a non-singleton string.
|
boolean |
isMaybeFuzzyStrOrSymbol()
Returns true if this value is maybe a non-singleton string or a non-singleton symbol.
|
boolean |
isMaybeGetter()
Returns true if this value maybe represents a getter.
|
boolean |
isMaybeGetterOrSetter()
Returns true if this value maybe represents a getter or setter.
|
boolean |
isMaybeInf()
Returns true if this value is maybe infinite.
|
boolean |
isMaybeModified()
Checks whether this value is marked as maybe modified.
|
boolean |
isMaybeNaN()
Returns true if this value is maybe NaN.
|
boolean |
isMaybeNotDontDelete()
Returns true is this value belongs to a property which maybe does not have DontDelete set.
|
boolean |
isMaybeNotDontEnum()
Returns true is this value belongs to a property which maybe does not have DontEnum set.
|
boolean |
isMaybeNotReadOnly()
Returns true is this value belongs to a property which maybe does not have ReadOnly set.
|
boolean |
isMaybeNull()
Returns true if this value is maybe null.
|
boolean |
isMaybeNum(double num)
Returns true if the given number is matched by this value.
|
boolean |
isMaybeNumOther()
Returns true if this value is maybe any non-UInt, non-Inf, and non-NaN number.
|
boolean |
isMaybeNumUInt()
Returns true if this value is maybe any UInt number.
|
boolean |
isMaybeNumUIntPos()
Returns true is this value may be any positive UInt32.
|
boolean |
isMaybeObject()
Returns true if this value maybe represents an object.
|
boolean |
isMaybeObjectOrSymbol()
Returns true if this value maybe represents an object or a symbol.
|
boolean |
isMaybeOtherThanBool()
Returns true if this value is maybe a non-boolean.
|
boolean |
isMaybeOtherThanNull()
Returns true if this value is maybe some other than null.
|
boolean |
isMaybeOtherThanNum()
Returns true if this value is maybe a non-number.
|
boolean |
isMaybeOtherThanNumUInt()
Returns true if this value is maybe a non-UInt-number.
|
boolean |
isMaybeOtherThanStr()
Returns true if this value may be a non-string.
|
boolean |
isMaybeOtherThanStrOrSymbol()
Returns true if this value may be a non-property-key.
|
boolean |
isMaybeOtherThanSymbol() |
boolean |
isMaybeOtherThanUndef()
Returns true if this value is maybe some other than undefined.
|
boolean |
isMaybePolymorphicPresent()
Returns true if this value is maybe present in the polymorphic part.
|
boolean |
isMaybePresent()
Returns true if this value is maybe present.
|
boolean |
isMaybePresentAccessor()
Returns true if this value is maybe present as a getter/setter property.
|
boolean |
isMaybePresentData()
Returns true if this value is maybe present as a data property.
|
boolean |
isMaybePresentOrUnknown()
Returns true if this value is maybe present or 'unknown'.
|
boolean |
isMaybePrimitive()
Returns true if this value may be a primitive, including undefined, null.
|
boolean |
isMaybePrimitiveOrSymbol()
Returns true if this value may be a non-object, including undefined, null, and symbols.
|
boolean |
isMaybeReadOnly()
Returns true is this value belongs to a property which maybe has ReadOnly set.
|
boolean |
isMaybeSameNumber(Value v)
Returns true if this number value is maybe the same as the given one.
|
boolean |
isMaybeSameNumberWhenNegated(Value v)
Returns true if this number value is maybe the same as the given one when negated.
|
boolean |
isMaybeSetter()
Returns true if this value maybe represents a setter.
|
boolean |
isMaybeSingleAllocationSite()
Returns true is this value contains exactly one object source location.
|
boolean |
isMaybeSingleNum()
Returns true if this value is maybe a singleton number, excluding NaN and +/-Inf.
|
boolean |
isMaybeSingleNumUInt()
Returns true if this value is maybe a singleton UInt number.
|
boolean |
isMaybeSingleObjectLabel()
Returns true is this value contains exactly one object label.
|
boolean |
isMaybeSingleStr()
Returns true if value is maybe a singleton string.
|
boolean |
isMaybeSingleStrOrSymbol()
Returns true if this value is maybe a singleton string or a singleton symbol (but not both).
|
boolean |
isMaybeStr(java.lang.String s)
Checks whether the given string is matched by this value.
|
boolean |
isMaybeStrIdentifier()
Returns true if this value is maybe any identifier string (ignoring excluded strings).
|
boolean |
isMaybeStrJSON()
Returns true if this value maybe originates from a JSON source.
|
boolean |
isMaybeStrOnlyUInt()
Returns true if this value is maybe any UInt string but not a non-UInt string (ignoring excluded strings).
|
boolean |
isMaybeStrOther()
Returns true if this value is maybe any non-number, non-identifier-parts string (ignoring excluded strings).
|
boolean |
isMaybeStrOtherIdentifierParts()
Returns true if this value is maybe any string consisting of identifier parts,
ignoring identifier strings and UInt strings (and ignoring excluded strings).
|
boolean |
isMaybeStrOtherNum()
Returns true if this value is maybe any (unbounded) non-UInt number string, including Infinity, -Infinity, and NaN (ignoring excluded strings).
|
boolean |
isMaybeStrPrefix()
Returns true if this value is maybe a fixed nonempty prefix string (ignoring excluded strings).
|
boolean |
isMaybeStrSomeNonNumeric()
Returns true if this value is maybe a non-numeric string.
|
boolean |
isMaybeStrSomeNonUInt()
Returns true if this value is maybe a non-UInt string.
|
boolean |
isMaybeStrSomeNumeric()
Returns true if this value is maybe some numeric string.
|
boolean |
isMaybeStrSomeUInt()
Returns true if this value is maybe some UInt string.
|
boolean |
isMaybeStrUInt()
Returns true if this value is maybe any UInt string (ignoring excluded strings).
|
boolean |
isMaybeSymbol()
Returns true if this value may be a symbol.
|
boolean |
isMaybeTrue()
Returns true if this value is maybe true.
|
boolean |
isMaybeTrueButNotFalse()
Returns true if this value is maybe true but not false.
|
boolean |
isMaybeUndef()
Returns true if this value is maybe undefined.
|
boolean |
isMaybeZero()
Returns true is this value may be the number 0.
|
boolean |
isNaN()
Returns true if this value is definitely NaN.
|
boolean |
isNone()
Returns true if this abstract value represents no concrete values.
|
boolean |
isNotAbsent()
Returns true if this value belongs to a definitely present property.
|
boolean |
isNotASingletonObject()
Returns true if this value does not contain a singleton object label.
|
boolean |
isNotASummarizedObject()
Returns true if this value does not contain a summarized object label.
|
boolean |
isNotBool()
Returns true if this value is definitely not a boolean.
|
boolean |
isNotDontDelete()
Returns true is this value belongs to a property which definitely does not have DontDelete set.
|
boolean |
isNotDontEnum()
Returns true is this value belongs to a property which definitely does not have DontEnum set.
|
boolean |
isNotNull()
Returns true if this value is definitely not null.
|
boolean |
isNotNum()
Returns true if this value is definitely not a number.
|
boolean |
isNotPresent()
Returns true if this value is definitely not present.
|
boolean |
isNotPresentNotAbsent()
Returns true if this value is definitely not present and not absent.
|
boolean |
isNotReadOnly()
Returns true is this value belongs to a property which definitely does not have ReadOnly set.
|
boolean |
isNotStr()
Returns true if this value is definitely not a string.
|
boolean |
isNotUndef()
Returns true if this value is definitely not undefined.
|
boolean |
isNullOrUndef()
Returns true if this value is definitely null or undefined.
|
boolean |
isPolymorphic()
Checks whether this value is polymorphic.
|
boolean |
isPolymorphicOrUnknown()
Checks whether this value is polymorphic or 'unknown'.
|
boolean |
isReadOnly()
Returns true is this value belongs to a property which definitely has ReadOnly set.
|
boolean |
isStrIdentifier()
Returns true if this value is definitely an identifier string.
|
boolean |
isStrIdentifierParts()
Returns true if this value is definitely an identifier-parts string.
|
boolean |
isStrJSON()
Returns true if this value is definitely originating from a JSON source.
|
boolean |
isStrMayContainSubstring(Str other)
Checks whether this string value may contain the given substring.
|
static boolean |
isUInt32(double v)
Checks whether the given number is a UInt32.
|
boolean |
isUnknown()
Returns true if this value is 'unknown'.
|
static Value |
join(java.util.Collection<Value> values)
Constructs a value as the join of the given collection of values.
|
static Value |
join(Value... values)
Constructs a value as the join of the given collection of values.
|
Value |
join(Value v)
Constructs a value as the join of this value and the given value.
|
Value |
join(Value v,
boolean widen)
Constructs a value as the join of this value and the given value.
|
Value |
joinAbsent()
Constructs a value as a copy of this value but marked as maybe absent.
|
Value |
joinAbsentModified()
Constructs a value as a copy of this value but marked as maybe absent and maybe modified.
|
Value |
joinAnyBool()
Constructs a value as the join of this value and any boolean.
|
Value |
joinAnyNum()
Constructs a value as the join of this value and any number.
|
Value |
joinAnyNumOther()
Constructs a value as the join of this value and any non-UInt number (excluding NaN and +/-Infinity).
|
Value |
joinAnyNumUInt()
Constructs a value as the join of this value and any UInt number.
|
Value |
joinAnyStr()
Constructs a value as the join of this value and any string.
|
Value |
joinAnyStrIdentifier()
Constructs a value as the join of this value and any identifier string.
|
Value |
joinAnyStrIdentifierParts()
Constructs a value as the join of this value and any identifier-parts string.
|
Value |
joinAnyStrOther()
Constructs a value as the join of this value and any non-number, non-identifier-parts string (including NaN and +/-Infinity).
|
Value |
joinAnyStrOtherNum()
Constructs a value as the join of this value and any non-UInt number string (excluding NaN and +/-Infinity).
|
Value |
joinAnyStrUInt()
Constructs a value as the join of this value and any UInt string.
|
Value |
joinBool(boolean x)
Constructs a value as the join of this value and the given concrete boolean value.
|
Value |
joinBool(Value x)
Constructs a value as the join of this value and the given concrete boolean value.
|
Value |
joinGettersSetters(Value v)
Joins the getters and setters from v into this value.
|
Value |
joinMeta(Value v)
Joins the meta-information from v into this value.
|
Value |
joinModified()
Constructs a value as a copy of this value but marked as maybe modified.
|
Value |
joinNotDontDelete()
Constructs a value as a copy of this value but with DontDelete maybe not set.
|
Value |
joinNotDontEnum()
Constructs a value as a copy of this value but with DontEnum maybe not set.
|
Value |
joinNotReadOnly()
Constructs a value as a copy of this value but with ReadOnly maybe not set.
|
Value |
joinNull()
Constructs a value as the join of this value and null.
|
Value |
joinNum(double v)
Constructs a value as the join of this value and the given concrete number.
|
Value |
joinNumInf()
Constructs a value as the join of this value and +/-Inf.
|
Value |
joinNumNaN()
Constructs a value as the join of this value and NaN.
|
Value |
joinObject(ObjectLabel objlabel)
Constructs a value as the join of this value and the given object label.
|
Value |
joinPrefix(java.lang.String s)
Constructs a value as the join of this value and the given prefix string.
|
Value |
joinStr(java.lang.String s)
Constructs a value as the join of this value and the given concrete string.
|
Value |
joinUndef()
Constructs a value as the join of this value and undefined.
|
static Value |
makeAbsent()
Constructs the absent value.
|
static Value |
makeAbsentModified()
Constructs the absent modified value.
|
static Value |
makeAnyBool()
Constructs the value representing any boolean.
|
static Value |
makeAnyNum()
Constructs the value describing any number.
|
static Value |
makeAnyNumNotNaNInf()
Constructs the value describing number except NaN and infinity.
|
static Value |
makeAnyNumOther()
Constructs the value describing any non-UInt, non-+/-Inf, non-NaN number.
|
static Value |
makeAnyNumUInt()
Constructs the value describing any UInt number.
|
static Value |
makeAnyNumUIntPos()
Constructs the value describing any positive UInt number.
|
static Value |
makeAnyStr()
Constructs the value describing any string.
|
static Value |
makeAnyStrIdent()
Constructs the value describing any identifier string.
|
static Value |
makeAnyStrNotNumeric()
Constructs the value describing any non-numeric string.
|
static Value |
makeAnyStrNotUInt()
Constructs the value describing any non-UInt string.
|
static Value |
makeAnyStrNumeric()
Constructs the value describing any numeric string.
|
static Value |
makeAnyStrOtherNum()
Constructs the value describing any string containing non-UInt32 numbers, including Infinity, -Infinity, and NaN.
|
static Value |
makeAnyStrUInt()
Constructs the value describing any UInt string.
|
static Value |
makeBool(Bool b)
Constructs the value describing the given Bool.
|
static Value |
makeBool(boolean b)
Constructs the value describing the given boolean.
|
Value |
makeExtendedScope()
Returns a value as this one but marked as having extended scope.
|
Value |
makeGetter()
Converts the object labels in this value into getters.
|
static Value |
makeJSONStr()
Constructs the value describing any JSON string.
|
static Value |
makeNone()
Constructs the empty abstract value (= bottom, if not considering 'unknown').
|
static Value |
makeNoneModified()
Constructs the empty abstract value that is marked as modified.
|
Value |
makeNonPolymorphic()
Constructs a fresh non-polymorphic value using the attributes (excluding presence) of the given value.
|
static Value |
makeNull()
Constructs the value describing definitely null.
|
static Value |
makeNum(double d)
Constructs the value describing the given number.
|
static Value |
makeNumInf()
Constructs the value describing +/-Inf.
|
static Value |
makeNumNaN()
Constructs the value describing NaN.
|
static Value |
makeObject(ObjectLabel v)
Constructs the value describing the given object label.
|
static Value |
makeObject(java.util.Set<ObjectLabel> v)
Constructs the value describing the given object labels.
|
Value |
makePolymorphic(ObjectProperty prop)
Constructs a fresh polymorphic value from the attributes (including absence and presence) of this value.
|
Value |
makeSetter()
Converts the object labels in this value into setters.
|
static Value |
makeStr(java.lang.String s)
Constructs the value describing the given string.
|
static Value |
makeStrings(java.util.Collection<java.lang.String> strings)
Constructs a new value representing the given strings.
|
static Value |
makeStringsAndSymbols(java.util.Collection<PKey> properties)
Constructs a new value representing the given strings and symbols.
|
static Value |
makeSymbol(ObjectLabel v)
Constructs the value describing the given symbol object label.
|
static Value |
makeTemporaryStr(java.lang.String s)
Constructs a temporary value describing the given string.
|
static Value |
makeUndef()
Constructs the value describing definitely undefined.
|
static Value |
makeUnknown()
Constructs the unknown value.
|
boolean |
mustContainNonIdentifierCharacters()
Checks whether all strings represented by this abstract value contain a non-identifier character.
|
boolean |
mustOnlyBeIdentifierCharacters()
Checks whether all strings represented by this abstract value contain only identifier characters.
|
java.lang.String |
printAttributes()
Produces a string description of the attributes of this value.
|
java.lang.String |
printFlags() |
Value |
removeAttributes()
Constructs a value as a copy of the given value but with all attributes definitely not set.
|
Value |
removeObjects(java.util.Set<ObjectLabel> objs)
Constructs a value as a copy of this value but with the given object labels removed.
|
Value |
replaceObjectLabel(ObjectLabel oldlabel,
ObjectLabel newlabel)
Returns a copy of this value where the given object label has been replaced, if present.
|
Value |
replaceValue(Value v)
Constructs a value as a copy of the given value but with the attributes from this value.
|
static void |
reset()
Resets the cache.
|
Value |
restrictToAttributes()
Constructs a value as a copy of this value but for reading attributes.
|
Value |
restrictToBool()
Constructs a value from this value where only the boolean facet is considered.
|
Value |
restrictToFalsy()
Constructs a value as a copy of this value but definitely not truthy.
|
Value |
restrictToFunction()
Constructs a value as a copy of this value but only with functions.
|
Value |
restrictToGetter()
Constructs a value as a copy of this value but only with getter values.
|
Value |
restrictToGetterSetter()
Constructs a value as a copy of this value but only with getter/setter values.
|
Value |
restrictToLooseEquals(Value v)
Returns a value that models a safe approximation of the intersection of this value and the given value, using loose equality.
|
Value |
restrictToLooseNotEquals(Value v)
Returns a value that models a safe approximation of this value minus the given value, using loose equality.
|
Value |
restrictToNonAttributes()
Constructs a value as a copy of this value but with all attributes set to bottom.
|
Value |
restrictToNonSymbolObject()
Constructs a value as a copy of this value but only with non-symbol object values.
|
Value |
restrictToNotAbsent()
Constructs a value as a copy of this value but definitely not absent.
|
Value |
restrictToNotBool()
Constructs a value as a copy of this value but definitely not a boolean.
|
Value |
restrictToNotFunction()
Constructs a value as a copy of this value but only with non-functions.
|
Value |
restrictToNotGetter()
Constructs a value as a copy of this value but definitely not a getter.
|
Value |
restrictToNotGetterSetter()
Constructs a value as a copy of this value but definitely not a getter or setter.
|
Value |
restrictToNotInf()
Constructs a value as a copy of this value but definitely not +/- Infinity.
|
Value |
restrictToNotModified()
Constructs a value as a copy of this value but marked as definitely not modified.
|
Value |
restrictToNotNaN()
Constructs a value as a copy of this value but definitely not NaN.
|
Value |
restrictToNotNull()
Constructs a value as a copy of this value but definitely not null.
|
Value |
restrictToNotNullNotUndef()
Constructs a value as a copy of this value but definitely not null nor undefined.
|
Value |
restrictToNotNum()
Constructs a value from this value but definitely not a number.
|
Value |
restrictToNotNumInf()
Constructs a value from this value but definitely not +/- infinity.
|
Value |
restrictToNotNumOther()
Constructs a value from this value but definitely not an "other" number.
|
Value |
restrictToNotNumUInt()
Constructs a value from this value but definitely not a UInt number.
|
Value |
restrictToNotNumZero()
Constructs a value from this value but definitely not zero.
|
Value |
restrictToNotObject()
Constructs a value as a copy of this value but only with non-object values.
|
Value |
restrictToNotSetter()
Constructs a value as a copy of this value but definitely not a setter.
|
Value |
restrictToNotStr()
Constructs a value from this value but definitely not a string.
|
Value |
restrictToNotStrIdentifierParts()
Constructs a value from this value but excluding the category of all strings that consist of identifier parts.
|
Value |
restrictToNotStrings(java.util.Set<java.lang.String> strings)
Constructs a value from this value but, if possible, with the given strings removed.
|
Value |
restrictToNotStrOtherNum()
Constructs a value from this value but excluding the category of all strings that
represent unbounded non-UInt32 numbers, including Infinity, -Infinity, and NaN.
|
Value |
restrictToNotStrPrefix()
Constructs a value from this value but excluding the category of all strings that consist of a fixed nonempty prefix string.
|
Value |
restrictToNotStrUInt()
Constructs a value from this value but excluding the category of all UInt strings.
|
Value |
restrictToNotSymbol()
Constructs a value as a copy of this value but definitely not a symbol.
|
Value |
restrictToNotTypeofObject()
Constructs a value as a copy of this value but only with values that do not have typeof "object".
|
Value |
restrictToNotUndef()
Constructs a value as a copy of this value but definitely not undefined.
|
Value |
restrictToNull()
Constructs a value as a copy of this value but only considering its null facet.
|
Value |
restrictToNum()
Constructs a value from this value where only the number facet is considered.
|
Value |
restrictToSetter()
Constructs a value as a copy of this value but only with setter values.
|
Value |
restrictToStr()
Constructs a value from this value where only the string facet is considered.
|
Value |
restrictToStrBoolNum()
Constructs a value from this value where only the string/boolean/number facets are considered.
|
Value |
restrictToStrictEquals(Value v)
Returns a value that models a safe approximation of the intersection of this value and the given value, using strict equality.
|
Value |
restrictToStrictNotEquals(Value v)
Returns a value that models a safe approximation of this value minus the given value, using strict equality.
|
Value |
restrictToSymbol()
Constructs a value as a copy of this value but definitely a symbol.
|
Value |
restrictToTruthy()
Constructs a value as a copy of this value but definitely not falsy.
|
Value |
restrictToTypeofObject()
Constructs a value as a copy of this value but only with values with typeof "object".
|
Value |
restrictToUndef()
Constructs a value as a copy of this value but only considering its undefined facet.
|
Value |
setAttributes(boolean dontenum,
boolean dontdelete,
boolean readonly)
Constructs a value as a copy of this value but with the given attributes.
|
Value |
setAttributes(Value from)
Constructs a value as a copy of this value but with attributes set as in the given value.
|
Value |
setBottomPropertyData()
Constructs a value as a copy of this value but with no information that only makes sense for object property values.
|
Value |
setDontDelete()
Constructs a value as a copy of this value but with DontDelete definitely set.
|
Value |
setDontEnum()
Constructs a value as a copy of this value but with DontEnum definitely set.
|
Value |
setNotDontDelete()
Constructs a value as a copy of this value but with DontDelete definitely not set.
|
Value |
setNotDontEnum()
Constructs a value as a copy of this value but with DontEnum definitely not set.
|
Value |
setNotReadOnly()
Constructs a value as a copy of this value but with ReadOnly definitely not set.
|
Value |
setReadOnly()
Constructs a value as a copy of this value but with ReadOnly definitely set.
|
Value |
summarize(Summarized s)
Constructs a value as a copy of this value but with object labels summarized.
|
java.lang.String |
toString()
Produces a string description of this value.
|
int |
typeSize()
Returns the number of different types of this value.
|
public void assertNonEmpty()
AnalysisException - if emptypublic void cleanupIncludedExcluded(Value r)
public boolean containsObjectLabel(ObjectLabel objlabel)
AnalysisException - if the value contains getters or setters.public void diff(Value old, java.lang.StringBuilder b)
old - The old value to diff against.b - The string builder to print the diff to.public boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic Value forgetExcludedIncludedStrings()
StrforgetExcludedIncludedStrings in interface Strpublic java.util.Set<java.lang.String> getAllKnownStr()
StrStr.isMaybeAllKnownStr() returns true.getAllKnownStr in interface Strpublic java.util.Set<ObjectLabel> getAllObjectLabels()
getObjectLabels()).public java.util.Set<java.lang.String> getExcludedStrings()
StrgetExcludedStrings in interface Strpublic java.util.Set<ObjectLabel> getGetters()
public java.util.Set<java.lang.String> getIncludedStrings()
StrgetIncludedStrings in interface Strpublic java.lang.Double getNum()
Numpublic java.util.Set<ObjectLabel> getObjectLabels()
getAllObjectLabels()).public ObjectProperty getObjectProperty()
public java.util.Set<SourceLocation> getObjectSourceLocations()
public java.lang.String getPrefix()
StrStr.isMaybeStrPrefix() returns true.public java.util.Set<ObjectLabel> getSetters()
public java.lang.String getStr()
StrStr.isMaybeSingleStr() returns true.public java.util.Set<ObjectLabel> getSymbols()
getSymbols in interface PKeyspublic boolean hasDontDelete()
public boolean hasDontEnum()
public int hashCode()
hashCode in class java.lang.Objectpublic boolean hasReadOnly()
public boolean isDontDelete()
public boolean isDontEnum()
public boolean isExtendedScope()
public boolean isInf()
Numpublic boolean isMaybeAbsent()
public boolean isMaybeAllKnownStr()
StrisMaybeAllKnownStr in interface Strpublic boolean isMaybeAnyBool()
BoolisMaybeAnyBool in interface Boolpublic boolean isMaybeAnyNum()
NumisMaybeAnyNum in interface Numpublic boolean isMaybeAnyNumNotNaNInf()
NumisMaybeAnyNumNotNaNInf in interface Numpublic boolean isMaybeAnyStr()
StrisMaybeAnyStr in interface Strpublic boolean isMaybeDontDelete()
public boolean isMaybeDontEnum()
public boolean isMaybeFalse()
BoolisMaybeFalse in interface Boolpublic boolean isMaybeFalseButNotTrue()
BoolisMaybeFalseButNotTrue in interface Boolpublic boolean isMaybeFuzzyNum()
NumisMaybeFuzzyNum in interface Numpublic boolean isMaybeFuzzyStr()
StrisMaybeFuzzyStr in interface Strpublic boolean isMaybeFuzzyStrOrSymbol()
PKeysisMaybeFuzzyStrOrSymbol in interface PKeyspublic boolean isMaybeGetter()
public boolean isMaybeGetterOrSetter()
public boolean isMaybeInf()
NumisMaybeInf in interface Numpublic boolean isMaybeModified()
public boolean isMaybeNaN()
NumisMaybeNaN in interface Numpublic boolean isMaybeNotDontDelete()
public boolean isMaybeNotDontEnum()
public boolean isMaybeNotReadOnly()
public boolean isMaybeNull()
NullisMaybeNull in interface Nullpublic boolean isMaybeNum(double num)
NumisMaybeNum in interface Numpublic boolean isMaybeNumOther()
NumisMaybeNumOther in interface Numpublic boolean isMaybeNumUInt()
NumisMaybeNumUInt in interface Numpublic boolean isMaybeNumUIntPos()
NumisMaybeNumUIntPos in interface Numpublic boolean isMaybeObject()
public boolean isMaybeObjectOrSymbol()
public boolean isMaybeOtherThanBool()
BoolisMaybeOtherThanBool in interface Boolpublic boolean isMaybeOtherThanNull()
NullisMaybeOtherThanNull in interface Nullpublic boolean isMaybeOtherThanNum()
NumisMaybeOtherThanNum in interface Numpublic boolean isMaybeOtherThanNumUInt()
NumisMaybeOtherThanNumUInt in interface Numpublic boolean isMaybeOtherThanStr()
StrisMaybeOtherThanStr in interface Strpublic boolean isMaybeOtherThanStrOrSymbol()
PKeysisMaybeOtherThanStrOrSymbol in interface PKeyspublic boolean isMaybeOtherThanSymbol()
public boolean isMaybeOtherThanUndef()
UndefisMaybeOtherThanUndef in interface Undefpublic boolean isMaybePolymorphicPresent()
public boolean isMaybePresent()
public boolean isMaybePresentAccessor()
public boolean isMaybePresentData()
public boolean isMaybePresentOrUnknown()
public boolean isMaybePrimitive()
public boolean isMaybePrimitiveOrSymbol()
public boolean isMaybeReadOnly()
public boolean isMaybeSameNumber(Value v)
NumisMaybeSameNumber in interface Numpublic boolean isMaybeSameNumberWhenNegated(Value v)
NumisMaybeSameNumberWhenNegated in interface Numpublic boolean isMaybeSetter()
public boolean isMaybeSingleAllocationSite()
public boolean isMaybeSingleNum()
NumisMaybeSingleNum in interface Numpublic boolean isMaybeSingleNumUInt()
NumisMaybeSingleNumUInt in interface Numpublic boolean isMaybeSingleObjectLabel()
public boolean isMaybeSingleStr()
StrisMaybeSingleStr in interface Strpublic boolean isMaybeSingleStrOrSymbol()
PKeysisMaybeSingleStrOrSymbol in interface PKeyspublic boolean isMaybeStr(java.lang.String s)
StrisMaybeStr in interface Strpublic boolean isMaybeStrIdentifier()
StrisMaybeStrIdentifier in interface Strpublic boolean isMaybeStrJSON()
StrisMaybeStrJSON in interface Strpublic boolean isMaybeStrOnlyUInt()
StrisMaybeStrOnlyUInt in interface Strpublic boolean isMaybeStrOther()
StrisMaybeStrOther in interface Strpublic boolean isMaybeStrOtherIdentifierParts()
StrisMaybeStrOtherIdentifierParts in interface Strpublic boolean isMaybeStrOtherNum()
StrisMaybeStrOtherNum in interface Strpublic boolean isMaybeStrPrefix()
StrisMaybeStrPrefix in interface Strpublic boolean isMaybeStrSomeNonNumeric()
StrisMaybeStrSomeNonNumeric in interface Strpublic boolean isMaybeStrSomeNonUInt()
StrisMaybeStrSomeNonUInt in interface Strpublic boolean isMaybeStrSomeNumeric()
StrisMaybeStrSomeNumeric in interface Strpublic boolean isMaybeStrSomeUInt()
StrisMaybeStrSomeUInt in interface Strpublic boolean isMaybeStrUInt()
StrisMaybeStrUInt in interface Strpublic boolean isMaybeSymbol()
PKeysisMaybeSymbol in interface PKeyspublic boolean isMaybeTrue()
BoolisMaybeTrue in interface Boolpublic boolean isMaybeTrueButNotFalse()
BoolisMaybeTrueButNotFalse in interface Boolpublic boolean isMaybeUndef()
UndefisMaybeUndef in interface Undefpublic boolean isMaybeZero()
NumisMaybeZero in interface Numpublic boolean isNaN()
Numpublic boolean isNone()
public boolean isNotAbsent()
public boolean isNotASingletonObject()
public boolean isNotASummarizedObject()
public boolean isNotBool()
Boolpublic boolean isNotDontDelete()
public boolean isNotDontEnum()
public boolean isNotNull()
Nullpublic boolean isNotNum()
Numpublic boolean isNotPresent()
public boolean isNotPresentNotAbsent()
public boolean isNotReadOnly()
public boolean isNotStr()
Strpublic boolean isNotUndef()
UndefisNotUndef in interface Undefpublic boolean isNullOrUndef()
public boolean isPolymorphic()
public boolean isPolymorphicOrUnknown()
public boolean isReadOnly()
public boolean isStrIdentifier()
StrisStrIdentifier in interface Strpublic boolean isStrIdentifierParts()
StrisStrIdentifierParts in interface Strpublic boolean isStrJSON()
Strpublic boolean isStrMayContainSubstring(Str other)
StrisStrMayContainSubstring in interface Strpublic static boolean isUInt32(double v)
public boolean isUnknown()
public static Value join(java.util.Collection<Value> values)
public static Value join(Value... values)
public Value join(Value v, boolean widen)
widen - if true, apply wideningpublic Value joinAbsent()
public Value joinAbsentModified()
public Value joinAnyBool()
BooljoinAnyBool in interface Boolpublic Value joinAnyNum()
NumjoinAnyNum in interface Numpublic Value joinAnyNumOther()
NumjoinAnyNumOther in interface Numpublic Value joinAnyNumUInt()
NumjoinAnyNumUInt in interface Numpublic Value joinAnyStr()
StrjoinAnyStr in interface Strpublic Value joinAnyStrIdentifier()
StrjoinAnyStrIdentifier in interface Strpublic Value joinAnyStrIdentifierParts()
StrjoinAnyStrIdentifierParts in interface Strpublic Value joinAnyStrOther()
StrjoinAnyStrOther in interface Strpublic Value joinAnyStrOtherNum()
StrjoinAnyStrOtherNum in interface Strpublic Value joinAnyStrUInt()
StrjoinAnyStrUInt in interface Strpublic Value joinBool(boolean x)
Boolpublic Value joinBool(Value x)
Boolpublic Value joinGettersSetters(Value v)
public Value joinModified()
public Value joinNotDontDelete()
public Value joinNotDontEnum()
public Value joinNotReadOnly()
public Value joinNull()
Nullpublic Value joinNum(double v)
Numpublic Value joinNumInf()
NumjoinNumInf in interface Numpublic Value joinNumNaN()
NumjoinNumNaN in interface Numpublic Value joinObject(ObjectLabel objlabel)
public Value joinPrefix(java.lang.String s)
StrjoinPrefix in interface Strpublic Value joinStr(java.lang.String s)
Strpublic Value joinUndef()
Undefpublic static Value makeAbsent()
public static Value makeAbsentModified()
public static Value makeAnyBool()
public static Value makeAnyNum()
public static Value makeAnyNumNotNaNInf()
public static Value makeAnyNumOther()
public static Value makeAnyNumUInt()
public static Value makeAnyNumUIntPos()
public static Value makeAnyStr()
public static Value makeAnyStrIdent()
public static Value makeAnyStrNotNumeric()
public static Value makeAnyStrNotUInt()
public static Value makeAnyStrNumeric()
public static Value makeAnyStrOtherNum()
public static Value makeAnyStrUInt()
public static Value makeBool(boolean b)
public Value makeExtendedScope()
public Value makeGetter()
public static Value makeJSONStr()
public static Value makeNone()
public static Value makeNoneModified()
public Value makeNonPolymorphic()
public static Value makeNull()
public static Value makeNum(double d)
public static Value makeNumInf()
public static Value makeNumNaN()
public static Value makeObject(ObjectLabel v)
public static Value makeObject(java.util.Set<ObjectLabel> v)
public Value makePolymorphic(ObjectProperty prop)
public Value makeSetter()
public static Value makeStr(java.lang.String s)
public static Value makeStrings(java.util.Collection<java.lang.String> strings)
public static Value makeStringsAndSymbols(java.util.Collection<PKey> properties)
public static Value makeSymbol(ObjectLabel v)
public static Value makeTemporaryStr(java.lang.String s)
public static Value makeUndef()
public static Value makeUnknown()
public boolean mustContainNonIdentifierCharacters()
StrmustContainNonIdentifierCharacters in interface Strpublic boolean mustOnlyBeIdentifierCharacters()
StrmustOnlyBeIdentifierCharacters in interface Strpublic java.lang.String printAttributes()
public java.lang.String printFlags()
public Value removeAttributes()
public Value removeObjects(java.util.Set<ObjectLabel> objs)
AnalysisException - if the value contains getters or setters.public Value replaceObjectLabel(ObjectLabel oldlabel, ObjectLabel newlabel)
oldlabel - The object label to replace.newlabel - The object label to replace oldlabel with.public Value replaceValue(Value v)
public static void reset()
public Value restrictToAttributes()
public Value restrictToBool()
public Value restrictToFalsy()
public Value restrictToFunction()
public Value restrictToGetter()
public Value restrictToGetterSetter()
public Value restrictToLooseEquals(Value v)
public Value restrictToLooseNotEquals(Value v)
public Value restrictToNonAttributes()
public Value restrictToNonSymbolObject()
public Value restrictToNotAbsent()
public Value restrictToNotBool()
BoolrestrictToNotBool in interface Boolpublic Value restrictToNotFunction()
public Value restrictToNotGetter()
public Value restrictToNotGetterSetter()
public Value restrictToNotInf()
NumrestrictToNotInf in interface Numpublic Value restrictToNotModified()
public Value restrictToNotNaN()
NumrestrictToNotNaN in interface Numpublic Value restrictToNotNull()
NullrestrictToNotNull in interface Nullpublic Value restrictToNotNullNotUndef()
public Value restrictToNotNum()
NumrestrictToNotNum in interface Numpublic Value restrictToNotNumInf()
NumrestrictToNotNumInf in interface Numpublic Value restrictToNotNumOther()
NumrestrictToNotNumOther in interface Numpublic Value restrictToNotNumUInt()
NumrestrictToNotNumUInt in interface Numpublic Value restrictToNotNumZero()
NumrestrictToNotNumZero in interface Numpublic Value restrictToNotObject()
AnalysisException - if the value contains getters or setters.public Value restrictToNotSetter()
public Value restrictToNotStr()
StrrestrictToNotStr in interface Strpublic Value restrictToNotStrIdentifierParts()
StrrestrictToNotStrIdentifierParts in interface Strpublic Value restrictToNotStrings(java.util.Set<java.lang.String> strings)
StrrestrictToNotStrings in interface Strpublic Value restrictToNotStrOtherNum()
StrrestrictToNotStrOtherNum in interface Strpublic Value restrictToNotStrPrefix()
StrrestrictToNotStrPrefix in interface Strpublic Value restrictToNotStrUInt()
StrrestrictToNotStrUInt in interface Strpublic Value restrictToNotSymbol()
public Value restrictToNotTypeofObject()
public Value restrictToNotUndef()
UndefrestrictToNotUndef in interface Undefpublic Value restrictToNull()
NullrestrictToNull in interface Nullpublic Value restrictToNum()
NumrestrictToNum in interface Numpublic Value restrictToSetter()
public Value restrictToStr()
StrrestrictToStr in interface Strpublic Value restrictToStrBoolNum()
public Value restrictToStrictEquals(Value v)
public Value restrictToStrictNotEquals(Value v)
public Value restrictToSymbol()
public Value restrictToTruthy()
public Value restrictToTypeofObject()
public Value restrictToUndef()
UndefrestrictToUndef in interface Undefpublic Value setAttributes(boolean dontenum, boolean dontdelete, boolean readonly)
public Value setAttributes(Value from)
public Value setBottomPropertyData()
public Value setDontDelete()
public Value setDontEnum()
public Value setNotDontDelete()
public Value setNotDontEnum()
public Value setNotReadOnly()
public Value setReadOnly()
public Value summarize(Summarized s)
public java.lang.String toString()
toString in class java.lang.Objectpublic int typeSize()
Copyright © 2009-2019 Aarhus University