Package gnu.mapping
Supports Procedure
,
and various related classes needed at run-time by dynamically typed
languages (such as Scheme and ECMAScript).
The exact set of classes in this package is still somewhat in flux.
License
See the file COPYING.Author
Per Bothner <per@bothner.com>Bugs and patches
Send them to per@bothner.com, or to the Kawa mailing list.-
Interface Summary Interface Description ArgList ArgListBuilder EnvironmentKey A pair of a name (aSymbol
) and a property (anyObject
).HasNamedParts HasSetter A Procedure that can be used on the left-hand-side of an assignment.Lazy<T> A lazy value is one that may be calculated on demand.Named -
Class Summary Class Description ArgListImpl ArgListPair ArgListVector CallContext A procedure activation stack (when compiled with explicit stacks).ConstrainedLocation<T> DynamicLocation<T> A Location that forwards to a thread-specific Location.Environment A mapping fromEnvironmentKey
toLocation
s.Future<T> IndirectableLocation<T> InheritingEnvironment KeyPair A simple concrete implemementation ofEnvironmentKey
.LazyPropertyKey<T> A property whose value can be found lazily.Location<T> A Location is an abstract cell/location/variable with a value of type T.LocationEnumeration LocationProc<T> A Procedure that evaluates to the value of a Location.MethodProc Similar to a CLOS method.NamedLocation<T> A Location that can be used as an entry in an Environment.Namespace A mapping from strings ("print names") toSymbol
s.PlainLocation<T> Procedure The abstract parent for all Scheme functions.Procedure0 Abstract class for 0-argument procedures.Procedure0or1 Abstract class for 0- or 1-argument Scheme procedures.Procedure1 Abstract class for 1-argument Scheme procedures.Procedure1or2 Abstract class for 1- or 2-argument Scheme procedures.Procedure2 Abstract class for 2-argument Scheme procedures.Procedure3 Abstract class for 3-argument Scheme procedures..Procedure4 Abstract class for 4-argument Scheme procedures.ProcedureN Abstract class for "N
-argument" Scheme procedures, whereN>4
or variable.ProcLocation Promise<T> Implement Scheme "promises".PropertyKey<T> PropertySet keys that provide statically-typeable values.PropertyLocation Used to implement Lisp-style "property lists".PropertySet ReadOnlyLocation RunnableClosure<T> Setter The "setter" of procedure that can be used in the LHS of an assignment.Setter0 A special case of Setter, retricted to no arguments, except the RHS.Setter1 A special case of Setter, retricted to one argument (plus the RHS).SharedLocation<T> A Location suitable when Environment or Location can be access by multiple threads.SimpleEnvironment Concrete implementation ofEnvironment
.SimpleSymbol A Symbol in the EmptyNamespace.Symbol A Symbol is a name, usually in a specific Namespace.Table2D Maps 2 objects to another.ThreadLocation<T> A Location that forwards to a thread-specific Location.Values<E> Encapsulate multiple values in a single object.Values.FromArray<E> An implementation of Values that stores the values in an array.Values.FromList<E> An implementation of Values that uses a java.util.List.Values.FromTreeList An implementation of Values that uses a TreeList.Values.Values2<E,V1 extends E,V2 extends E> A specialization of Values for exactly 2 values. -
Exception Summary Exception Description UnboundLocationException An undefined symbol was evaluated.WrappedException Encapsulate some Exception inside a RuntimeException.WrongArguments WrongType Exception thrown when a procedure parameter has the wrong type.