dotty.tools.dotc.util
Members list
Type members
Classlikes
A class inheriting from Attachment.Container supports adding, removing and lookup of attachments. Attachments are typed key/value pairs.
A class inheriting from Attachment.Container supports adding, removing and lookup of attachments. Attachments are typed key/value pairs.
Attachments whose key is an instance of StickyKey
will be kept when the attachments are copied using withAttachmentsFrom
.
Attributes
- Supertypes
- Self type
-
Attachment.type
A character buffer that exposes the internal array for reading. That way we can avoid copying when converting to names.
A character buffer that exposes the internal array for reading. That way we can avoid copying when converting to names.
Attributes
- Supertypes
Attributes
- Supertypes
- Self type
The comment parsing in dotc
is used by both the comment cooking and the scaladoc tool.
The comment parsing in dotc
is used by both the comment cooking and the scaladoc tool.
The comment cooking is used to expand comments with <invalid inheritdoc annotation>
and @define
annotations. The rest of the comment is untouched and later handled by scaladoc.
Attributes
- Supertypes
- Self type
-
CommentParsing.type
Adds standard functionality to a class. For now: Just the unsupported
method.
Adds standard functionality to a class. For now: Just the unsupported
method.
Attributes
- Supertypes
A specialized implementation of GenericHashMap with identity hash and eq
as comparison.
A specialized implementation of GenericHashMap with identity hash and eq
as comparison.
Attributes
- Supertypes
Attributes
- Companion
- class
- Supertypes
- Self type
-
FreshNameCreator.type
Attributes
- Companion
- class
- Supertypes
- Self type
-
GenericHashMap.type
A hash table using open hashing with linear scan which is also very space efficient at small sizes. The implementations of hash
and isEqual
are left open. They have to be provided by subclasses.
A hash table using open hashing with linear scan which is also very space efficient at small sizes. The implementations of hash
and isEqual
are left open. They have to be provided by subclasses.
Value parameters
- capacityMultiple
-
The minimum multiple of capacity relative to used elements. The hash table will be re-sized once the number of elements multiplied by capacityMultiple exceeds the current size of the hash table. However, a table of size up to DenseLimit will be re-sized only once the number of elements reaches the table's size.
- initialCapacity
-
Indicates the initial number of slots in the hash table. The actual number of slots is always a power of 2, so the initial size of the table will be the smallest power of two that is equal or greater than the given
initialCapacity
. Minimum value is 4.
Attributes
- Companion
- object
- Supertypes
- Known subtypes
A specialized implementation of GenericHashMap with standard hashCode and equals as comparison
A specialized implementation of GenericHashMap with standard hashCode and equals as comparison
Attributes
- Supertypes
A hash set that allows some privileged protected access to its internals
A hash set that allows some privileged protected access to its internals
Value parameters
- capacityMultiple
-
The minimum multiple of capacity relative to used elements. The hash table will be re-sized once the number of elements multiplied by capacityMultiple exceeds the current size of the hash table. However, a table of size up to DenseLimit will be re-sized only once the number of elements reaches the table's size.
- initialCapacity
-
Indicates the initial number of slots in the hash table. The actual number of slots is always a power of 2, so the initial size of the table will be the smallest power of two that is equal or greater than the given
initialCapacity
. Minimum value is 4.
Attributes
- Companion
- object
- Supertypes
A dense map from some Key
type to Int. Dense means: All keys and values are stored in arrays from 0 up to the size of the map. Keys and values can be obtained by index using
key(index)and
value(index). Values can also be stored using
setValue(index, value)`.
A dense map from some Key
type to Int. Dense means: All keys and values are stored in arrays from 0 up to the size of the map. Keys and values can be obtained by index using
key(index)and
value(index). Values can also be stored using
setValue(index, value)`.
ome privileged protected access to its internals
Value parameters
- capacityMultiple
-
The minimum multiple of capacity relative to used elements. The hash table will be re-sized once the number of elements multiplied by capacityMultiple exceeds the current size of the hash table. However, a table of size up to DenseLimit will be re-sized only once the number of elements reaches the table's size.
- initialCapacity
-
Indicates the initial number of slots in the hash table. The actual number of slots is always a power of 2, so the initial size of the table will be the smallest power of two that is equal or greater than the given
initialCapacity
. Minimum value is 4.
Attributes
- Supertypes
A least-recently-used cache for Key -> Value computations It currently keeps the last 8 associations, but this can be changed to anywhere between 2 and 16 by changing LRUCache.Retained
.
A least-recently-used cache for Key -> Value computations It currently keeps the last 8 associations, but this can be changed to anywhere between 2 and 16 by changing LRUCache.Retained
.
Implementation: We keep a ring of eight places, linked with the next
data structure. The ring models a priority queue. last
points to the last element of the queue, and next(last)
to the first one. Lookups compare keys sequentially from first to last. Elements with successful lookup get promoted to be first in the queue. Elements are evicted at the last
position.
Attributes
- Companion
- object
- Supertypes
A common class for lightweight mutable maps.
A common class for lightweight mutable maps.
Attributes
- Supertypes
- Known subtypes
A common class for lightweight mutable sets.
A common class for lightweight mutable sets.
Attributes
- Supertypes
- Known subtypes
Provides functions to encode and decode Scala symbolic names.
Provides functions to encode and decode Scala symbolic names.
Attributes
- Supertypes
- Self type
-
NameTransformer.type
Attributes
- Supertypes
-
class SourceFiletrait SourceFiletrait AbstractFileclass Objecttrait Matchableclass AnyShow all
- Self type
-
NoSource.type
A sentinel for a non-existing source position
A sentinel for a non-existing source position
Attributes
- Supertypes
-
class SourcePositiontrait Serializabletrait Producttrait Equalstrait Showabletrait SourcePositiontrait SrcPosclass Objecttrait Matchableclass AnyShow all
- Self type
-
NoSourcePosition.type
Attributes
- Companion
- class
- Supertypes
- Self type
-
ParsedComment.type
Attributes
- Companion
- class
- Supertypes
- Self type
-
PerfectHashing.type
A map that maps keys to unique integers in a dense interval starting at 0.
A map that maps keys to unique integers in a dense interval starting at 0.
Value parameters
- capacityMultiple
-
The minimum multiple of capacity relative to used elements. The hash table will be re-sized once the number of elements multiplied by capacityMultiple exceeds the current size of the hash table. However, a table of size up to DenseLimit will be re-sized only once the number of elements reaches the table's size.
- initialCapacity
-
Indicates the initial number of slots in the hash table. The actual number of slots is always a power of 2, so the initial size of the table will be the smallest power of two that is equal or greater than the given
initialCapacity
. Minimum value is 4.
Attributes
A class for the reading part of mutable or immutable maps.
A class for the reading part of mutable or immutable maps.
Attributes
- Supertypes
- Known subtypes
-
A class for the readonly part of mutable sets.
A class for the readonly part of mutable sets.
Attributes
- Companion
- object
- Supertypes
- Known subtypes
-
class MutableSet[T]class HashSet[T]class WeakHashSet[A]class Uniquesclass AppliedUniquesclass NamedTypeUniquesShow all
Attributes
- Companion
- class
- Supertypes
- Self type
-
ReadOnlySet.type
A wrapper for a list of cached instances of a type T
. The wrapper is recursion-reentrant: several instances are kept, so at each depth of reentrance we are reusing the instance for that.
A wrapper for a list of cached instances of a type T
. The wrapper is recursion-reentrant: several instances are kept, so at each depth of reentrance we are reusing the instance for that.
An instance is created upon creating this object, and more instances are allocated dynamically, on demand, when reentrance occurs.
Not thread safe.
Ported from scala.reflect.internal.util.ReusableInstance
Attributes
- Companion
- object
- Supertypes
Attributes
- Companion
- class
- Supertypes
- Self type
-
ReusableInstance.type
Attributes
- Supertypes
- Self type
-
ScriptSourceFile.type
Attributes
- Supertypes
- Self type
-
ShowPickled.type
Attributes
- Supertypes
- Self type
-
Signatures.type
A simple linked map with eq
as the key comparison, optimized for small maps. It has linear complexity for apply
, updated
, and remove
.
A simple linked map with eq
as the key comparison, optimized for small maps. It has linear complexity for apply
, updated
, and remove
.
Attributes
- Companion
- object
- Supertypes
- Known subtypes
Attributes
- Companion
- class
- Supertypes
- Self type
-
SimpleIdentityMap.type
A simple linked set with eq
as the comparison, optimized for small sets. It has linear complexity for contains
, +
, and -
.
Attributes
- Companion
- class
- Supertypes
- Self type
-
SimpleIdentitySet.type
An efficient implementation of sequences of 16 indexed elements with values 0..15 in a single Long.
An efficient implementation of sequences of 16 indexed elements with values 0..15 in a single Long.
Attributes
- Companion
- object
- Supertypes
-
class AnyValtrait Matchableclass Any
Attributes
- Companion
- class
- Supertypes
- Self type
-
SixteenNibbles.type
Attributes
- Companion
- class
- Supertypes
- Self type
-
SourceFile.type
A source position is comprised of a span and a source file
A source position is comprised of a span and a source file
Attributes
- Supertypes
- Known subtypes
-
object NoSourcePosition.type
The offsets part of a full position, consisting of 2 or 3 entries:
The offsets part of a full position, consisting of 2 or 3 entries:
- start: the start offset of the span, in characters from start of file
- end : the end offset of the span
- point: if given, the offset where a single
^
would be logically placed
Spans are encoded according to the following format in little endian: Start: unsigned 26 Bits (works for source files up to 64M) End: unsigned 26 Bits Point: unsigned 12 Bits relative to start NoSpan encoded as -1L (this is a normally invalid span because point would lie beyond end).
Attributes
- Supertypes
- Self type
-
Spans.type
Things that can produce a source position and a span
Things that can produce a source position and a span
Attributes
- Supertypes
- Known subtypes
-
class Positionedclass Tree[T]class Block[T]class XMLBlockclass CaseDef[T]class DenotingTree[T]trait DefTree[T]class NamedDefTree[T]class Bind[T]class MemberDef[T]class TypeDef[T]class ValOrDefDef[T]class DefDef[T]class ValDef[T]class EmptyValDef[T]trait ValOrTypeDef[T]class ModuleDefclass Template[T]class DerivingTemplateclass ImportOrExport[T]class Export[T]class Import[T]class NameTree[T]class Labeled[T]class RefTree[T]class Ident[T]class SearchFailureIdent[T]object EmptyTypeIdent.typeclass Select[T]class SelectWithSig[T]class SingletonTypeTree[T]class This[T]class TypeTree[T]class InferredTypeTree[T]class DerivedTypeTreeclass DerivedFromParamTreeclass SetterParamTreeclass TermRefTreeclass TypeRefTreeclass Hole[T]class Inlined[T]class Literal[T]class NamedArg[T]class New[T]trait PatternTree[T]class Alternative[T]class UnApply[T]class ProxyTree[T]class Annotated[T]class AppliedTypeTree[T]class GenericApply[T]class Apply[T]class TypeApply[T]class PackageDef[T]class RefinedTypeTree[T]class Super[T]class Typed[T]class Parensclass TypedSpliceclass SeqLiteral[T]class JavaSeqLiteral[T]trait TermTree[T]class Assign[T]class Closure[T]class If[T]class InlineIf[T]class Match[T]class InlineMatch[T]class Return[T]class Try[T]class WhileDo[T]class Thicket[T]class EmptyTree[T]trait TypTree[T]class ByNameTypeTree[T]class LambdaTypeTree[T]class MatchTypeTree[T]class TermLambdaTypeTree[T]class TypeBoundsTree[T]trait WithoutTypeOrPos[T]class DependentTypeTreeclass ExtMethodsclass Functionclass FunctionWithModsclass WildcardFunctionclass GenAliasclass GenFromclass ImportSelectorclass Intoclass MacroTreeclass OpTreeclass InfixOpclass PostfixOpclass PrefixOpclass PolyFunctionclass Tupleclass Modclass Abstractclass Erasedclass Finalclass Givenclass Implicitclass Impureclass Infixclass Inlineclass Lazyclass Opaqueclass Openclass Overrideclass Privateclass Protectedclass Sealedclass Transparentclass Varclass Symbolclass ClassSymbolobject NoSymbol.typeclass SourcePositionobject NoSourcePosition.typeShow all
Attributes
- Supertypes
- Self type
-
StackTraceOps.type
Attributes
- Companion
- object
- Supertypes
-
class AnyValtrait Matchableclass Any
A HashSet where the elements are stored weakly. Elements in this set are eligible for GC if no other hard references are associated with them. Its primary use case is as a canonical reference identity holder (aka "hash-consing") via findEntryOrUpdate
A HashSet where the elements are stored weakly. Elements in this set are eligible for GC if no other hard references are associated with them. Its primary use case is as a canonical reference identity holder (aka "hash-consing") via findEntryOrUpdate
This Set implementation cannot hold null. Any attempt to put a null in it will result in a NullPointerException
This set implementation is not in general thread safe without external concurrency control. However it behaves properly when GC concurrently collects elements in this set.
Attributes
- Companion
- object
- Supertypes
- Known subtypes
Companion object for WeakHashSet
Attributes
- Supertypes
- Self type
-
concurrent.type
Types
A linear map is a map where after an updated
the previous map value cannot be used anymore. The map is implemented as an immutable map for sizes <= 4 (where immutable maps have specialized, compact representations) and as a HashMap for larger sizes.
A linear map is a map where after an updated
the previous map value cannot be used anymore. The map is implemented as an immutable map for sizes <= 4 (where immutable maps have specialized, compact representations) and as a HashMap for larger sizes.
Attributes
A linear set is a set where after a +
the previous set value cannot be used anymore. The set is implemented as an immutable set for sizes <= 4 and as a HashSet for larger sizes.
A linear set is a set where after a +
the previous set value cannot be used anymore. The set is implemented as an immutable set for sizes <= 4 and as a HashSet for larger sizes.