Known direct subtypes
Approximation to descriptor protocol, skipping meta-descriptor protocol
Holds if attribute lookup on this object may “bind”
Gets the boolean value of this object. This may be both true and false if the “object” represents a set of possible objects.
Holds if the result of attribute access on the class holding this descriptor is
Holds if the result of attribute access on an instance of a class holding this descriptor is
Gets the ‘object’ resulting from iterating over this object. Used in the context
Gets the name of this of this object if it has a meaningful name. Note that the name of an object is not necessarily the name by which it is called For example the function named
Holds if this value has the attribute
Gets the integer value of things that have integer values and whose integer value is tracked. That is, some ints, mainly small numbers, and bools.
True if this “object” is a class. That is, its class inherits from
Holds if this object is a descriptor. Holds, for example, for functions and properties and not for integers.
Holds if this is a subclass of the
Holds if this is a class whose instances we treat specially, rather than as a generic instance. For example,
Gets the length of the sequence that this “object” represents. Always returns a value for a sequence, will be -1 if the object has no fixed length.
Looks up the attribute
Gets the string value of things that have string values. That is, strings.
Holds if the result of subscripting this object are wholly or partly unknowable
Holds if this ‘object’ represents an entity that should be exposed to the legacy points_to API This should hold for almost all objects that do not have an underlying DB object representing their source, for example
Holds if the attributes of this object are wholly or partly unknowable
Holds if the function
Holds if the object
Gets the class of this object.
Gets the class declaration for this object, if it is a class with a declaration.
Gets a control flow node that represents the source origin of this object, if it has a meaningful location in the source code. This method exists primarily for providing backwards compatibility and locations for source objects. Source code objects should attempt to return exactly one result for this method.
For backwards compatibility shim – Not all objects have a “source”. Objects (except unknown and undefined values) should attempt to return exactly one result for this method.
Holds if this object is introduced into the code base at
True if this “object” can be meaningfully analyzed to determine the boolean value of equality tests on it. For example,
Gets a textual representation of this element.