All Classes and Interfaces

Class
Description
 
 
 
 
Base class for renderers that are part of the standard library.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
External property and function implementations for the `base` module.
 
 
 
 
 
 
 
 
 
 
 
 
Ensures that `childNode` isn't optimized away.
 
 
 
A logger that keeps messages locally and can return them.
 
 
 
The canonical name of a package dependency within a project.
 
 
 
 
 
 
 
 
 
 
Utilities shared across Java dnd Kotlin code generators.
 
 
 
 
 
 
 
A container of properties.
Object literal that contains entries (and possibly properties) but not elements.
 
 
 
`this` inside `CustomThisScope` (type constraint, object member predicate).
Java representation of a pkl.base#DataSize value.
 
 
 
 
 
 
 
 
 
 
The unit of a DataSize.
 
 
 
 
Property body for properties that don't have an explicit body.
Delegates to the equally named key of the map stored in extra storage.
Delegates to the equally named member of the object stored in extra storage.
Delegates to the equally named member of the object stored in extra storage.
 
 
Java representation of pkl.Project#RemoteDependency.
Java representation of a package's dependency metadata.
 
Java representation of a pkl.base#Duration value.
 
 
 
 
 
 
 
The unit of a Duration.
 
 
 
 
 
 
 
 
 
Puts CompilerDirectives.TruffleBoundarys on EconomicMap methods and provides some added functionality.
 
Object literal that contains both elements and entries (and possibly properties).
Object literal that contains elements (and possibly properties) but not entries.
Object literal node with empty body.
Object literal that contains entries (and possibly properties) but not elements.
 
 
Evaluates a Pkl module through different modes of evaluation.
A builder for an Evaluator.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Java representation of pkl.base#FileOutput.
 
Manages file systems, potentially across multiple evaluator instances.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
x = new Mapping { for (i in IntSeq(1, 3)) for (key, value in Map(4, "Pigeon", 6, "Barn Owl")) [i * key] = value.reverse() }
An object literal node that contains at least one for- or when-expression.
 
 
 
 
 
 
 
 
Returns a `ObjectMember`'s key while executing the corresponding `MemberNode`.
 
 
Resolves `` to the type's default value in `new { ...
 
 
 
 
 
 
An HTTP client.
A builder of HTTP clients.
Indicates that an error occurred while initializing an HTTP client.
 
Note: this class has a natural ordering that is inconsistent with equals.
Root node for a mixin used as default value for type `Mixin`.
 
Used by ReadGlobNode.
 
 
Collects module uris and resource uris imported within a module.
Infers the parent to amend in `function createPerson(): Person = new { ...
Infers the parent to amend in `obj { local function createPerson(): Person = new { ...
Infers the parent to amend in `x = new { ...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
A non-virtual ("direct") method call.
A non-virtual method call whose call target is in the lexical scope of the call site.
A virtual method call.
 
 
 
 
A reverse iterator for arrays.
A reverse iterator for lists that performs all work behind Truffle boundaries.
An iterator for iterables that performs all work behind Truffle boundaries.
Parser for JSON.
 
 
 
 
 
 
 
 
 
A handler for parser events.
 
A streaming parser for JSON text.
 
 
 
Writes a JSON (RFC 7159) encoded value to a stream, one token at a time.
 
 
 
 
A node that requires access to `VmLanguage`.
Indicates that the annotated field is initially null and initialized to a non-null value before or upon first use.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
An immutable object that represents a location in the parsed text.
SPI for log messages emitted by the Pkl evaluator.
 
Predefined Loggers.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Common base class for TypeAlias, PClass, PClass.Property, and PClass.Method.
 
 
 
 
 
 
 
 
 
 
 
Caches modules by the URI originally specified in the importing module, and also by the resolved URI from which the module was eventually loaded.
 
 
 
 
SPI for identifying, resolving, caching, and resolving a Pkl module.
Utilities for obtaining and using module key factories.
A factory for ModuleKeys.
Utilities for creating and using ModuleKeys.
Represents a module imported via the projectpackage scheme.
 
Resolves modulepath URIs from ZIP or JAR files, or from directory paths.
 
Describes the property, method and class members of a module.
A representation for a Pkl module's source URI, and optionally its source text.
 
A mutable boolean in a box.
A mutable long in a box.
A mutable reference in a box.
 
Indicates that method return types and method parameters in the annotated package are Nonnull unless explicitly annotated with Nullable.
 
Indicates that a non-existent property was requested for a Composite.
 
 
 
 
 
 
 
 
 
 
 
The output formats that Pkl supports out-of-the-box.
Java representation of class pkl.Project#Package
The canonical URI of an asset within a package, i.e., a package URI with a fragment path.
 
 
 
 
Java representation of a pkl.base#Pair value.
 
 
 
 
 
 
An unchecked exception to indicate that an input does not qualify as valid JSON.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Java representation of a pkl.base#Class value.
 
 
 
Information about a Pkl class and its Java representation.
 
 
 
Java version of pkl.EvaluatorSettings.
 
 
 
Information about the Pkl package index.
A Pkl package index.
 
Associates a stdlib node class with a Pkl member name or a stdlib package with a Pkl module name.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
This class provides an empty implementation of PklParserVisitor, which can be extended to create a visitor which only needs to handle a subset of the available methods.
This interface defines a complete generic visitor for a parse tree produced by PklParser.
 
Java representation of a Pkl settings file.
An editor for viewing and editing Pkl files.
Information about the Pkl release that the current program runs on.
The language implementation of a platform.
The operating system of a platform.
The processor of a platform.
The language runtime of a platform.
The virtual machine of a platform.
 
 
 
 
 
 
Java representation of a Pkl module.
Java representation of a pkl.base#Null value.
Java representation of a Pkl object.
Java representation of module pkl.Project.
Deprecated, for removal: This API element is subject to removal in a future version.
 
Given a project's dependencies, build the dependency list.
The Java representation of a project's resolved dependency list.
 
Given a list of project directories, prepares artifacts to be published as a package.
 
 
Object literal that contains properties but not elements or entries.
 
 
 
 
 
A Pkl type as used in type annotations.
 
 
 
 
 
 
 
 
 
 
 
 
 
Used by ReadGlobNode.
 
Reads a local non-constant property that is known to exist in the lexical scope of this node.
 
 
Stdlib nodes are shared between engines.
 
An expression of the form `super[key]`.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
A MemberNode that belongs to a single Member.
Information about the Pkl release that the current program runs on.
The documentation of a Pkl release.
The source code of a Pkl release.
The standard library of a Pkl release.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Requests evaluation of REPL input.
Requests loading of a module.
 
 
 
 
 
 
 
 
 
 
 
SPI for identifying a resolved module and loading its source code.
Utilities for obtaining and using resolved module keys.
Resolves a method name in a method call with implicit receiver, for example `bar` in `x = bar()` (but not `foo.bar()`).
 
 
Resolves a variable name, for example `foo` in `x = foo`.
An external (file, HTTP, etc.) resource.
 
 
 
 
 
 
SPI for reading external resources from Pkl.
Predefined resource readers for OS environment variables and external properties.
Enforces a security model during evaluation.
Parent interface to builder classes for configuring a SecurityManager.
A SecurityManagerException declares that a violation occurred during an external i/o operation.
A provider for SecurityManagers.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
A MemberNode that is shared between multiple members.
A binary expression whose right operand may be short-circuited.
 
 
Base class for object literal nodes specialized for a certain mix of property/entry/element definitions.
An element of a Pkl stack trace.
Transforms stack frames to make Pkl stack trace output more useful.
Static factory for stack frame transformers.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
The Jaro–Winkler distance metric is designed and best suited for short strings such as person names, and to detect typos; it is (roughly) a variation of Damerau-Levenshtein, where the substitution of 2 close characters is considered less important then the substitution of 2 characters that a far from each other.
 
 
 
 
 
 
A scope where this has a special meaning (type constraint, object member predicate).
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Aggregate test results for a module.
 
 
 
Runs test results examples and facts.
 
 
 
 
 
 
Java representation of a pkl.base#TypeAlias value.
 
 
A property definition that does not have a type annotation but should be type-checked.
 
 
 
 
 
 
 
A property definition that has a type annotation.
 
 
 
 
 
 
A non-open and non-abstract class type.
The `module` type for a final module.
 
Base class for types whose `executeAndSet` method assigns values to slots with `frame.setXYZ(slot, value)`.
 
 
 
 
 
 
 
 
 
 
 
 
 
An `open` or `abstract` class type.
The `module` type for an open module.
 
The `nothing` type.
 
 
 
 
 
 
 
 
 
 
 
 
 
The `unknown` type.
 
Base class for types whose `executeAndSet` method assigns values to slots with a `WriteFrameSlotNode`.
 
 
A type parameter of a generic class, type alias, or method.
The variance of a type parameter.
 
 
 
 
 
 
 
 
 
 
 
The `module` type.
 
 
 
 
 
 
 
 
 
Java representation of a Pkl value.
Converter for data models generated by [Evaluator].
 
Renders Pkl values in some output format.
Predefined ValueRenderers for Pcf, JSON, YAML, and XML property lists.
Visitor for data models generated by [Evaluator].
 
 
 
 
 
 
 
 
 
 
 
 
 
Error message guidelines: Pkl strives to provide a great experience for casual users.
 
 
 
 
 
 
 
 
 
 
 
 
 
Corresponds to `pkl.base#Object`.
A builder for VmObjects whose ObjectMembers are determined at run time.
 
 
 
 
 
Corresponds to `pkl.base#Object|pkl.base#Function`.
 
 
 
 
Uses methods from [java.lang.(Strict)Math] where appropriate, which may benefit from special optimization by Graal.
 
 
 
 
Indicates that a type check failed.
 
 
 
 
 
 
 
 
 
Renders values for use in REPL and error messages.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Utilities for parsing YAML.