Uses of Class
convex.core.data.ACell
Packages that use ACell
Package
Description
Fundamental Convex classes used for the decentralised network
Crypto algorithms used within Convex, particularly for digital signatures and
cryptographic hashes
Data structures and algorithms, including a complete set of classes
required to implement immutable, decentralised data objects.
Implementation of CVM Primitive Data types
CVM type system implementation.
Specialised exception classes used in the Convex implementation and libraries
Core CVM implementation
Internal CVM language implementation classes
CVM Operations, effectively the "machine code" of the CVM
Implementation of the standard Convex Lisp Reader
Etch database for convergent immutable storage
Convex network transaction types.
Convex utility classes and miscellaneous functionality
Convex network transaction types.
-
Uses of ACell in convex.core
Subclasses of ACell in convex.coreModifier and TypeClassDescriptionclass
Class representing a Peer's view of the overall network consensus state.final class
A Block contains an ordered collection of signed transactions that may be applied collectively as part of a state update.class
Class representing the result of applying a Block to a State.class
Class representing an Ordering of transactions, along with the consensus position.class
Transaction Receipt record.final class
Class representing the result of a Query or Transaction.class
Class representing the immutable state of the CVM State transitions are represented by blocks of transactions, according to the logic: s[n+1] = s[n].applyBlock(b[n]) State contains the following elements - Map of AccountStatus for every Address - Map of PeerStatus for every Peer Address - Global values - Schedule data structure "State.Fields in convex.core with type parameters of type ACellModifier and TypeFieldDescriptionState.EMPTY_SCHEDULE
Constants.INITIAL_GLOBALS
Initial global values for a new StateMethods in convex.core with type parameters of type ACellModifier and TypeMethodDescriptionBelief.getRef
(int i) Block.getRef
(int i) BlockResult.getRef
(int i) Order.getRef
(int i) Receipt.getRef
(int i) State.getRef
(int i) <T extends ACell>
TResult.getValue()
Returns the value for this result.<T extends ACell>
SignedData<T> BeliefMerge.sign
(T value) Sign a value using the keypair for this MergeContext<T extends ACell>
SignedData<T> Peer.sign
(T value) Signs a value with the keypair of this PeerMethods in convex.core that return ACellModifier and TypeMethodDescriptionBlockResult.getErrorCode
(long i) Gets the error code for a given transactionReceipt.getErrorCode()
Gets the error code of this Receipt, or null if not an errorResult.getErrorCode()
Returns the Error Code from this Result.ResultContext.getErrorCode()
Result.getID()
Returns the message ID for this result.Receipt.getResult()
Gets the result value of this Receipt, or null if an errorResultContext.getResult()
Methods in convex.core that return types with arguments of type ACellModifier and TypeMethodDescriptionState.getEnvironment
(Address addr) Gets the environment for a given account, or null if not found.State.getGlobals()
Gets globals.Result.getInfo()
Returns the info for this Result.Result.getLog()
Returns the log for this Result.Peer.getPeerData
(AStore store) LikePeer.getPeerData(AStore, ACell)
but uses a null root key.Peer.getPeerData
(AStore store, ACell rootKey) Gets Peer Data from a Store.State.getSchedule()
Gets the current schedule data structure for this statePeer.toData()
Gets the Peer Data map for this PeerResult.values()
Methods in convex.core with parameters of type ACellModifier and TypeMethodDescriptionstatic Receipt
static Receipt
static Result
Create a Resultstatic Result
Create a Resultstatic Result
Create a Resultstatic Receipt
Receipt.createError
(ACell errorCode) boolean
boolean
boolean
boolean
boolean
boolean
Peer.executeQuery
(ACell form) Executes a query in this Peer's current Consensus State, using a default addressPeer.executeQuery
(ACell form, Address address) Compiles and executes a query on the current consensus state of this Peer.static Collection
<SignedData<Order>> Belief.extractOrders
(ACell payload) Extract a collection of Orders from a Cell, suitable for Belief mergePeer.getPeerData
(AStore store, ACell rootKey) Gets Peer Data from a Store.static Peer
Peer.restorePeer
(AStore store, AKeyPair keyPair, ACell rootKey) Restores a Peer from the Etch database specified in ConfigUpdates result with a given message ID.Method parameters in convex.core with type arguments of type ACellModifier and TypeMethodDescriptionstatic Result
Result.buildFromVector
(AVector<ACell> values) static Receipt
static Result
Create a Resultstatic Peer
Constructs a Peer instance from persisted PEer DataResult.withExtraInfo
(Map<Keyword, ACell> extInfo) protected Result
Result.withValues
(AVector<ACell> newValues) Constructors in convex.core with parameters of type ACellModifierConstructorDescriptionprotected
Constructor parameters in convex.core with type arguments of type ACell -
Uses of ACell in convex.core.crypto
Subclasses of ACell in convex.core.cryptoModifier and TypeClassDescriptionclass
Class representing a cryptographic signatureclass
Immutable data value class representing an Ed25519 digital signature.Methods in convex.core.crypto with type parameters of type ACellModifier and TypeMethodDescriptionabstract <R extends ACell>
SignedData<R> AKeyPair.signData
(R value) Signs a data value with this key pair -
Uses of ACell in convex.core.crypto.bc
Methods in convex.core.crypto.bc with type parameters of type ACell -
Uses of ACell in convex.core.crypto.wallet
Methods in convex.core.crypto.wallet with type parameters of type ACell -
Uses of ACell in convex.core.data
Classes in convex.core.data with type parameters of type ACellModifier and TypeClassDescriptionclass
Abstract base class for Blob-like objects, which conceptually behave as a sequence of bytes.class
ACollection<T extends ACell>
Abstract base class for Persistent Merkle Collectionsclass
ACountable<E extends ACell>
Abstract base class for Countable objects, supporting `count`, `nth`, `empty?` and `slice` Countable values support a count of elements and the ability to get by an element index.class
ADataStructure<E extends ACell>
Abstract base class for Persistent data structures.class
class
class
class
Abstract base class for Indexes: a sorted radix-tree map of Blobs to Values.class
Abstract base class for lists.class
Abstract base class for maps.class
Abstract base class for maps.class
class
class
Abstract base class for concrete sequential data structure (immutable persistent lists and vectors etc.)class
Abstract based class for sets.class
ASpecialVector<T extends ACell>
BAse class for specialised vector implementationsclass
Abstract base class for vectors.interface
IAssociative<K extends ACell,
V extends ACell> Interface for associative data structuresinterface
IAssociative<K extends ACell,
V extends ACell> Interface for associative data structuresfinal class
Index node implementation, providing an efficient radix tree based immutable data structure for indexed access and sorting.class
Implementation of a list wrapping a vector.class
Map.Entry implementation for persistent maps.class
Map.Entry implementation for persistent maps.class
Limited size Persistent Merkle Map implemented as a small sorted list of Key/Value pairs Must be sorted by Key hash value to ensure uniqueness of representationclass
Limited size Persistent Merkle Map implemented as a small sorted list of Key/Value pairs Must be sorted by Key hash value to ensure uniqueness of representationclass
Persistent Map for large hash maps requiring tree structure.class
Persistent Map for large hash maps requiring tree structure.class
Class representing a smart reference to a decentralised data value.class
Ref subclass for direct in-memory references.class
Reference class implemented via a soft reference and store lookup.class
Limited size Persistent Merkle Set implemented as a small sorted list of Values Must be sorted by Key hash value to ensure uniqueness of representationclass
Persistent Set for large hash sets requiring tree structure.final class
SignedData<T extends ACell>
Node representing a signed data object.class
VectorArray<T extends ACell>
Non-canonical vector implementation designed to make operations on small temporary vectors more efficient.class
VectorLeaf<T extends ACell>
A Persistent Vector implementation representing 0-16 elements with a packed Vector prefix.class
VectorTree<T extends ACell>
Persistent Vector implemented as a merkle tree of chunks shift indicates the level of the tree: 4 = 1st level, 8 = second etc.Subclasses of ACell in convex.core.dataModifier and TypeClassDescriptionclass
Abstract base class for binary data stored in Java arrays.class
Abstract base class for data objects containing immutable chunks of binary data.class
Abstract base class for Blob-like objects, which conceptually behave as a sequence of bytes.class
Immutable class representing an Ed25519 Public Key for an Accountclass
Class representing the current on-chain status of an account.class
ACollection<T extends ACell>
Abstract base class for Persistent Merkle Collectionsclass
ACountable<E extends ACell>
Abstract base class for Countable objects, supporting `count`, `nth`, `empty?` and `slice` Countable values support a count of elements and the ability to get by an element index.class
ADataStructure<E extends ACell>
Abstract base class for Persistent data structures.final class
Immutable class representing an Address, generally used to uniquely identify an Account.class
Abstract Blob base base for Blobs that derive their functionality from other sources.class
class
class
Abstract base class for Indexes: a sorted radix-tree map of Blobs to Values.class
Abstract base class for lists.class
class
Abstract base class for maps.class
class
Base class for Record data types.class
Abstract base class for generic records.class
Abstract base class for concrete sequential data structure (immutable persistent lists and vectors etc.)class
Abstract based class for sets.class
ASpecialVector<T extends ACell>
BAse class for specialised vector implementationsclass
Abstract base Class representing a CVM String.class
Abstract based class for symbolic objects (Keywords, Symbols)class
Abstract base class for vectors.class
General purpose immutable wrapper for byte array data.class
Implementation of a large Blob data structure consisting of 2 or more chunks.class
Class used to represent an immutable 32-byte Hash value.final class
Index node implementation, providing an efficient radix tree based immutable data structure for indexed access and sorting.final class
Keyword data type.class
Implementation of a list wrapping a vector.final class
Wrapper for an 8-byte long as a Blob We use this mainly for efficient management of indexes using Longs in Indexes.class
Map.Entry implementation for persistent maps.class
Limited size Persistent Merkle Map implemented as a small sorted list of Key/Value pairs Must be sorted by Key hash value to ensure uniqueness of representationclass
Persistent Map for large hash maps requiring tree structure.class
Class describing the on-chain state of a Peer declared on the network.class
Limited size Persistent Merkle Set implemented as a small sorted list of Values Must be sorted by Key hash value to ensure uniqueness of representationclass
Persistent Set for large hash sets requiring tree structure.final class
SignedData<T extends ACell>
Node representing a signed data object.final class
Class representing a short CVM string, backed by a flat Blob Used for most small strings, and acts as the leaf chunk for StringTreesclass
AString subclass representing a view some String data.class
String implementation class wrapping a BlobTree.final class
Class representing a Symbol.final class
Class representing a Syntax Object.class
VectorArray<T extends ACell>
Non-canonical vector implementation designed to make operations on small temporary vectors more efficient.class
VectorLeaf<T extends ACell>
A Persistent Vector implementation representing 0-16 elements with a packed Vector prefix.class
VectorTree<T extends ACell>
Persistent Vector implemented as a merkle tree of chunks shift indicates the level of the tree: 4 = 1st level, 8 = second etc.Fields in convex.core.data declared as ACellModifier and TypeFieldDescriptionstatic final ACell[]
Cells.EMPTY_ARRAY
An empty Java array of cellsFields in convex.core.data with type parameters of type ACellMethods in convex.core.data with type parameters of type ACellModifier and TypeMethodDescriptionstatic <T extends ACell>
TAnnounces a Cell, reporting as novelty any cells that have not been previously announcedIndex.create
(K k, V v) Creates a list wrapping the given array.MapEntry.create
(K key, V value) Creates a new MapEntry with the provided key and valueMapEntry.create
(K key, V value) Creates a new MapEntry with the provided key and valueCreates a ListMap with the specified entries.Creates a ListMap with the specified entries.Creates a MapLeaf with the specified entries.Creates a MapLeaf with the specified entries.Constructs a map with the given keys and values.Constructs a map with the given keys and values.Create a map with a collection of entries.Create a map with a collection of entries.Maps.create
(K k, V v) Maps.create
(K k, V v) RefDirect.create
(T value) Creates a new Direct ref to the given value.Creates a SetLeaf with the specified elements.Creates a SetLeaf with the specified elements.SetLeaf.create
(V item) Sets.create
(ACountable<T> source) Creates a set of all the elements in the given data structureCreate a SetTree given a number of element Refs to distribute among children.static <T extends ACell>
SignedData<T> SignedData.create
(ASignature sig, Ref<T> ref) Creates a SignedData object with the given parameters.static <T extends ACell>
SignedData<T> SignedData.create
(AccountKey address, ASignature sig, Ref<T> ref) Creates a SignedData object with the given parameters.static <T extends ACell>
VectorLeaf<T> Creates a VectorLeaf with the given itemsstatic <T extends ACell>
VectorLeaf<T> Creates a VectorLeaf with the given items appended to the specified tailstatic <T extends ACell>
VectorLeaf<T> VectorLeaf.create
(T[] things) Create a vector from an array of elements.Creates a canonical AVector with the given elementsCreates a Vector from the contents of an arbitrary sequenceVectors.create
(Collection<?> elements) Coerces a collection to a vector.Vectors.create
(Collection<?> elements) Coerces a collection to a vector.static <T extends ACell>
VectorTree<T> Create a TreeVector with the specified elements - things must have at least 32 elements (the minimum TreeVector size) - must be a whole multiple of 16 elements (complete chunks only)Ref.createArray
(T[] values) RefSoft.createForHash
(Hash hash) Create a RefSoft with a Hash reference.AccountKey.createRef()
ACell.createRef()
Creates a new Ref for this CellALongBlob.createRef()
ASymbolic.createRef()
Maps.createWithShift
(int shift, List<MapEntry<K, V>> entries) Create a hashmap with the correct shift and given entries.Maps.createWithShift
(int shift, List<MapEntry<K, V>> entries) Create a hashmap with the correct shift and given entries.Sets.createWithShift
(int shift, ArrayList<Ref<T>> values) static <T extends ACell>
TFormat.decodeMultiCell
(Blob data) Reads a cell from a Blob of data, allowing for non-embedded children following the first cellLists.empty()
Maps.empty()
Maps.empty()
Sets.empty()
Vectors.empty()
MapLeaf.emptyMap()
MapLeaf.emptyMap()
Maps.emptyRef()
Maps.emptyRef()
Sets.emptyRef()
SetLeaf.emptySet()
Creates a RefSoft using a specific Hash.Sets.fromCollection
(Collection<T> source) Creates a set of all the elements in the given data structureRef.get
(T value) Returns a direct Ref wrapping the given value.AccountStatus.getCallableFunction
(Symbol sym) Gets a callable function from the environment, or null if not callablefinal <T extends ACell>
TACell.getCanonical()
Gets the canonical representation of this Cell.ACell.getChildRefs()
Gets an array of child Refs for this Cell, in the same order as order accessible by getRef.<R extends ACell>
RAccountStatus.getEnvironmentValue
(Symbol symbol) Gets the value in the Account's environment for the given symbol.SignedData.getMessageForRef
(Ref<T> ref) AArrayBlob.getRef
(int i) AccountStatus.getRef
(int i) ACell.getRef()
Gets the Ref for this Cell, creating a new direct reference if necessaryACell.getRef
(int i) Gets a numbered child Ref from within this Cell.Address.getRef
(int i) AIndex.getRef
(int i) ALongBlob.getRef
(int i) AMapEntry.getRef
(int i) ARecordGeneric.getRef
(int index) ASymbolic.getRef
(int i) BlobTree.getRef
(int i) Gets a Ref from a Cell by indexIndex.getRef
(int i) List.getRef
(int i) MapEntry.getRef
(int i) MapLeaf.getRef
(int i) MapTree.getRef
(int i) PeerStatus.getRef
(int i) SetTree.getRef
(int i) SignedData.getRef
(int i) StringShort.getRef
(int i) StringTree.getRef
(int i) Syntax.getRef
(int i) VectorLeaf.getRef
(int i) VectorTree.getRef
(int i) abstract <R extends ACell>
ACollection<R> Maps a function over a collection, applying it to each element in turn.Ref.nil()
Index.none()
Create a map entry, converting key and value to correct CVM types.Create a map entry, converting key and value to correct CVM types.Constructs a map with the given keys and values.Constructs a map with the given keys and values.static <T extends ACell>
VectorArray<T> Creates a vector with the given values.static <T extends ACell>
TCells.persist
(T a) Persist a cell in the current storestatic <T extends ACell>
TPersist a cell in the given storeRef.persist()
Persists this Ref in the current store if not embedded and not already persisted.Persists this Ref in the current store if not embedded and not already persisted.Ref.persistShallow()
Persists a Ref shallowly in the current store.Ref.persistShallow
(Consumer<Ref<ACell>> noveltyHandler) Persists a Ref shallowly in the current store.static <T extends ACell>
TDecodes a single Value from a Blob.static <T extends ACell>
TDecodes a single Value from a Blob, starting at a given offset Assumes the presence of a tag.static <T extends ACell>
THelper method to read a value encoded as a hex stringReads a List from the specified Blob.Reads a MapLeaf from the provided Blob encoding.Reads a MapLeaf from the provided Blob encoding.Read a Hashmap from a Blob.Read a Hashmap from a Blob.Reads a ListMap from the provided BlobReads a ListMap from the provided BlobReads a MapLeaf from the provided ByteBuffer Assumes the header byte is already read.Reads a SetTree from the provided Blob encodingstatic <T extends ACell>
SignedData<T> Reads a SignedData instance from the given Blob encodingstatic <T extends ACell>
VectorLeaf<T> Reads aVectorLeaf
from the provided Blob Assumes the header byte and count is already read.Reads a Vector for the specified Blob.static <T extends ACell>
VectorTree<T> Reads a VectorTree from the provided Blob Assumes the header byte and count is already checked.Reads a ref from the given Blob position.Reads a Ref or embedded Cell value from a Blob Converts Embedded Cells to Direct Refs automatically.Vectors.repeat
(T m, int count) Creates a List containing the elements of the provided vector in reverse orderstatic <T extends ACell>
SignedData<T> Create a SignedData by signing a value with the given key pairstatic <T extends ACell>
SignedData<T> Signs a data value Ref with the given keypair.static <T extends ACell>
TPersist a cell in the given storeIndex.unsafeCreate
(long depth, MapEntry<K, V> entry, Ref<Index>[] entries, int mask, long count) MapLeaf.unsafeCreate
(MapEntry<K, V>... items) Creates aMapLeaf
MapLeaf.unsafeCreate
(MapEntry<K, V>... items) Creates aMapLeaf
SetLeaf.unsafeCreate
(Ref<V>... refs) Create a SetLeaf with raw element Refs.SetLeaf.unsafeCreate
(V... elements) Create a SetLeaf with raw elements.SetTree.unsafeCreate
(Ref<AHashSet<T>>[] children, int shift, short mask, long count) static <R extends ACell>
RRecursively unwraps a Syntax objectstatic <T extends ACell>
TRef.update
(T o, IRefFunction func) Updates Refs in an arbitrary CellRef.updateRefs
(Ref<T>[] refs, IRefFunction func) Updates an array of Refs with the given function.static <R extends ACell>
RRef.updateRefs
(R a, IRefFunction func) Wraps a Vector as a list (will reverse element order)static <T extends ACell>
VectorArray<T> Create a vector directly wrapping an array of cells.Methods in convex.core.data that return ACellModifier and TypeMethodDescriptionstatic ACell[]
Format.decodeCells
(Blob data) Decodes an array of Cells packed in a Blob.abstract ACell
Get the value associated with a given key.abstract ACell
Get the value associated with a given key.abstract ACell
AMapEntry.get
(long i) final ACell
Gets the record field content for a given key, or null if not found.abstract ACell
Gets the record field content for a given key, or null if not found.MapEntry.get
(long i) AccountStatus.getController()
Get the controller for this AccountAccountStatus.getHolding
(Address addr) ACell[]
ARecord.getValuesArray()
Gets an array containing all values in this record, in format-defined key order.protected abstract ACell
ACell.toCanonical()
Converts this Cell to a canonical version.Index.toCanonical()
Keyword.toCanonical()
List.toCanonical()
MapLeaf.toCanonical()
Symbol.toCanonical()
Syntax.toCanonical()
protected ACell
VectorArray.toCanonical()
VectorLeaf.toCanonical()
VectorTree.toCanonical()
ACell[]
ACollection.toCellArray()
Converts this collection to a new Cell arrayACell[]
ASequence.toCellArray()
Converts this sequence to a new Cell arraystatic ACell[]
Cells.toCellArray
(Object anyArray) Converts any array to an ACell[] array.AArrayBlob.updateRefs
(IRefFunction func) ACell.updateRefs
(IRefFunction func) Updates all Refs in this object using the given function.Address.updateRefs
(IRefFunction func) ALongBlob.updateRefs
(IRefFunction func) ASymbolic.updateRefs
(IRefFunction func) StringShort.updateRefs
(IRefFunction func) Methods in convex.core.data that return types with arguments of type ACellModifier and TypeMethodDescriptionRef.addAllToSet
(ASet<ACell> store) Adds the value of this Ref and all non-embedded child values to a given set.AMapEntry.appendChunk
(AVector<ACell> chunk) ARecord.assocEntry
(MapEntry<Keyword, ACell> e) ARecord.empty()
ARecord.entryAt
(long i) ARecordGeneric.entryAt
(long i) ARecord.entrySet()
final VectorLeaf
<ACell> AMapEntry.getChunk
(long offset) MapEntry.getElementRef
(long i) MapEntry.getElementRefUnsafe
(long i) ARecord.getEntryByHash
(Hash hash) AccountStatus.getEnvironment()
Gets the Environment for this account.AccountStatus.getHoldings()
Gets the holdings for this account.ARecord.getKeyRefEntry
(Ref<ACell> keyRef) Syntax.getMeta()
Gets the metadata for this syntax object.Syntax.getMeta()
Gets the metadata for this syntax object.AccountStatus.getMetadata()
Gets the Metadata map for this AccountAccountStatus.getMetadata()
Gets the Metadata map for this AccountPeerStatus.getMetadata()
Gets the Metadata of this PeerPeerStatus.getMetadata()
Gets the Metadata of this PeerVectorArray.getRef
(int i) AMapEntry.iterator()
AMapEntry.listIterator()
AMapEntry.listIterator
(long index) AMapEntry.next()
AMapEntry.slice
(long start, long end) MapEntry.toCanonical()
ARecord.toHashMap()
Converts this record to a HashMapMapEntry.toVector()
ARecord.values()
Gets a vector of values for this Record, in format-determined orderARecordGeneric.values()
Methods in convex.core.data with parameters of type ACellModifier and TypeMethodDescriptionRefs.accumulateRefSet
(ACell a) Accumulates the set of all unique Refs in the given object.abstract ADataStructure
<E> Associates a key with a value in this associative data structure.Associates a blob key with a value in this data structure.Associates the given key with the specified value.static int
Cells.branchCount
(ACell a) Gets the number of Branches directly contained in a Cell (will be zero if the Cell is not a Ref container)abstract ACollection
<T> Adds an element to this collection, according to the natural semantics of the collectionabstract ADataStructure
<E> Adds an element to this data structure, in the natural manner defined by the general data structure type.Adds an element to this list, in first position.Adds a new map entry to this map.Adds an element to the sequence in the natural positionPrepends an element to the list in first position.boolean
abstract boolean
Tests if this Set contains a given valueabstract boolean
ADataStructure.containsKey
(ACell key) Checks if the data structure contains the specified keyfinal boolean
AHashMap.containsKey
(ACell key) boolean
AIndex.containsKey
(ACell key) boolean
AMap.containsKey
(ACell key) boolean
ARecord.containsKey
(ACell key) boolean
ASequence.containsKey
(ACell key) boolean
ASet.containsKey
(ACell key) abstract boolean
AMap.containsValue
(ACell value) CHecks if this map contains the given value.boolean
ARecord.containsValue
(ACell value) boolean
Index.containsValue
(ACell value) boolean
MapLeaf.containsValue
(ACell value) boolean
MapTree.containsValue
(ACell value) Creates a list wrapping the given array.Constructs a map with the given keys and values.static Syntax
Wraps a value as a Syntax Object with empty metadata.static Syntax
Wraps a value as a Syntax Object, adding the given new metadatastatic <T extends ACell>
VectorLeaf<T> Creates a VectorLeaf with the given itemsstatic <T extends ACell>
VectorLeaf<T> Creates a VectorLeaf with the given items appended to the specified tailstatic <T extends ACell>
VectorLeaf<T> VectorLeaf.create
(T[] things) Create a vector from an array of elements.Creates a canonical AVector with the given elementsstatic <T extends ACell>
VectorTree<T> Create a TreeVector with the specified elements - things must have at least 32 elements (the minimum TreeVector size) - must be a whole multiple of 16 elements (complete chunks only)Ref.createArray
(T[] values) static Syntax
Syntax.createUnchecked
(ACell value, AHashMap<ACell, ACell> meta) Dissociates a key from this map, returning an updated map if the key was removed, or the same unchanged map if the key is not present.static Blob
Format.encodedBlob
(ACell o) Gets the encoded Blob for an object in canonical message formatstatic String
Format.encodedString
(ACell cell) Gets a hex String representing an object's encodingstatic Blob
Format.encodeMultiCell
(ACell a, boolean everything) Encode a Cell completely in multi-cell message format.boolean
Determines if this Blob is equal to another Object.boolean
abstract boolean
Checks for equality with another Cell.boolean
boolean
final boolean
final boolean
static boolean
Equality method allowing for nullsboolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
static int
Format.estimateEncodingSize
(ACell cell) Estimate the encoding size of a Cell value.Updates the set to exclude the given elementprotected static boolean
ACell.genericEquals
(ACell a, ACell b) Generic Cell equality, use only if better implementation not available.abstract ACell
Get the value associated with a given key.abstract ACell
Get the value associated with a given key.final CVMBool
final V
abstract V
final V
Gets the value at a specified key, or returns the fallback value if not foundfinal ACell
Gets the record field content for a given key, or null if not found.Gets the element at the specified keystatic Hash
Computes the Hash for any ACell value.Cells.getEncoding
(ACell a) static int
Format.getEncodingLength
(ACell value) Gets the MapEntry for the given keystatic Hash
Gets the Hash (Value ID of a cell)static long
ACell.getMemorySize
(ACell a) Gets the Memory Size of a Cell, computing it if required.Gets a Ref from a Cell by indexASet.getValueRef
(ACell k) Gets the Ref in the Set for a given value, or null if not foundSetLeaf.getValueRef
(ACell k) SetTree.getValueRef
(ACell k) static boolean
Format.isCanonical
(ACell o) Returns true if the object is a canonical data object.static boolean
Cells.isCompletelyEncoded
(ACell a) Checks if a Cell is completely encoded, i.e.static boolean
Checks if a Cell is a valid CVM valuestatic boolean
Format.isEmbedded
(ACell cell) Determines if an object should be embedded directly in the encoding rather than referenced with a Ref / hash.static boolean
Checks if a Cell is a first class valuestatic Syntax
Merge metadata into a Cell, after wrapping as a Syntax Objectstatic Syntax
Wraps a value as a Syntax Object with empty metadata.static String
Refs.printMissingTree
(ACell value) static void
Refs.printMissingTree
(StringBuilder sb, ACell value) Utility function to locate missing datastatic int
Gets the number of Refs directly contained in a Cell (will be zero if the Cell is not a Ref container)static long
Cells.storageSize
(ACell a) Get the full storage size of a value, including size of an embedded encodingstatic long
Refs.totalRefCount
(ACell a) Counts the total number of Refs contained in a data object recursively, including the given cell.static long
Refs.uniqueRefCount
(ACell a) Counts the number of logically unique Refs for a Cell, i.e.SetLeaf.unsafeCreate
(V... elements) Create a SetLeaf with raw elements.static <R> R
Unwraps a Syntax Object to get the underlying value.static <R extends ACell>
RRecursively unwraps a Syntax objectstatic void
Cells.visitBranches
(ACell a, Consumer<ACell> visitor) Visit all non-embedded branches from a Cell.static void
Cells.visitBranchRefs
(ACell a, Consumer<Ref<?>> visitor) Visit all non-embedded branches from a Cell.AccountStatus.withController
(ACell newController) AccountStatus.withHolding
(Address addr, ACell value) static <T extends ACell>
VectorArray<T> Create a vector directly wrapping an array of cells.static int
Writes a cell encoding to a byte array, preceded by the appropriate tagMethod parameters in convex.core.data with type arguments of type ACellModifier and TypeMethodDescriptionprotected void
ARecord.accumulateEntrySet
(Set<Map.Entry<Keyword, ACell>> h) protected void
ARecord.accumulateValues
(List<ACell> al) Ref.addAllToSet
(ASet<ACell> store) Adds the value of this Ref and all non-embedded child values to a given set.boolean
static <T extends ACell>
TAnnounces a Cell, reporting as novelty any cells that have not been previously announcedboolean
AMapEntry.appendChunk
(AVector<ACell> chunk) ARecord.assocEntry
(MapEntry<Keyword, ACell> e) long
AMapEntry.commonPrefixLength
(AVector<ACell> b) final boolean
AMap.containsKeyRef
(Ref<ACell> ref) static PeerStatus
static PeerStatus
static Syntax
Wraps a value as a Syntax Object, adding the given new metadatastatic Syntax
Wraps a value as a Syntax Object, adding the given new metadatastatic Syntax
Syntax.createUnchecked
(ACell value, AHashMap<ACell, ACell> meta) static Syntax
Syntax.createUnchecked
(ACell value, AHashMap<ACell, ACell> meta) static void
Format.decodeCells
(HashMap<Hash, ACell> acc, Blob data) Decode encoded non-embedded Cells into an accumulator HashMapstatic Blob
Format.encodeCells
(List<ACell> cells) Encodes a flat list of cells in order specified in multi-cell formatstatic Blob
Format.encodeDelta
(List<ACell> cells) Encode a list of cells as a delta message.boolean
void
void
ARecord.forEach
(BiConsumer<? super Keyword, ? super ACell> action) AIndex.getKeyRefEntry
(Ref<ACell> ref) AMap.getKeyRefEntry
(Ref<ACell> ref) Get an entry given a Ref to the key value.ARecord.getKeyRefEntry
(Ref<ACell> keyRef) MapLeaf.getKeyRefEntry
(Ref<ACell> ref) MapTree.getKeyRefEntry
(Ref<ACell> ref) Merges metadata into this syntax object, overriding existing metadataMerges metadata into this syntax object, overriding existing metadataPersists this Ref in the current store if not embedded and not already persisted.Ref.persistShallow
(Consumer<Ref<ACell>> noveltyHandler) Persists a Ref shallowly in the current store.<R> R
MapEntry.reduce
(BiFunction<? super R, ? super ACell, ? extends R> func, R value) <R> R
ARecord.reduceEntries
(BiFunction<? super R, MapEntry<Keyword, ACell>, ? extends R> func, R initial) <R> R
ARecord.reduceValues
(BiFunction<? super R, ? super ACell, ? extends R> func, R initial) static void
Cells.visitBranches
(ACell a, Consumer<ACell> visitor) Visit all non-embedded branches from a Cell.void
MapEntry.visitElementRefs
(Consumer<Ref<ACell>> f) AccountStatus.withEnvironment
(AHashMap<Symbol, ACell> newEnvironment) Replaces metadata on this Syntax Object.Replaces metadata on this Syntax Object.PeerStatus.withPeerData
(AHashMap<ACell, ACell> newMeta) PeerStatus.withPeerData
(AHashMap<ACell, ACell> newMeta) protected abstract ARecord
ARecordGeneric.withValues
(AVector<ACell> newValues) Updates the record with a new set of values.Constructor parameters in convex.core.data with type arguments of type ACellModifierConstructorDescriptionprotected
ARecordGeneric
(RecordFormat format, AVector<ACell> values) -
Uses of ACell in convex.core.data.impl
Classes in convex.core.data.impl with type parameters of type ACellModifier and TypeClassDescriptionclass
ADerivedSet<T extends ACell,
K extends ACell, V extends ACell> Abstract base class for non-canonical sets derived off maps Useful for cases where we want a Set instance, but don't want to construct a whole new data structureclass
ADerivedSet<T extends ACell,
K extends ACell, V extends ACell> Abstract base class for non-canonical sets derived off maps Useful for cases where we want a Set instance, but don't want to construct a whole new data structureclass
ADerivedSet<T extends ACell,
K extends ACell, V extends ACell> Abstract base class for non-canonical sets derived off maps Useful for cases where we want a Set instance, but don't want to construct a whole new data structureclass
class
Subclasses of ACell in convex.core.data.implModifier and TypeClassDescriptionclass
ADerivedSet<T extends ACell,
K extends ACell, V extends ACell> Abstract base class for non-canonical sets derived off maps Useful for cases where we want a Set instance, but don't want to construct a whole new data structureclass
class
Blob filled with all zeros.Methods in convex.core.data.impl with type parameters of type ACellModifier and TypeMethodDescriptionMethods in convex.core.data.impl with parameters of type ACell -
Uses of ACell in convex.core.data.prim
Subclasses of ACell in convex.core.data.primModifier and TypeClassDescriptionclass
Abstract base class for CVM Integer valuesclass
BAse class for CVM numeric typesclass
Abstract base class for CVM primitive values.final class
Arbitrary precision Integer implementation for the CVM.final class
Class for CVM Boolean types.final class
Class for CVM Character values.final class
Class for CVM double floating-point values.final class
Class for CVM long values.Methods in convex.core.data.prim with type parameters of type ACellModifier and TypeMethodDescriptionAPrimitive.getRef
(int i) CVMBigInteger.getRef
(int i) CVMBool.getRef
(int i) Methods in convex.core.data.prim that return ACellModifier and TypeMethodDescriptionCVMBool.not()
static ACell
APrimitive.toCanonical()
APrimitive.updateRefs
(IRefFunction func) CVMBool.updateRefs
(IRefFunction func) Methods in convex.core.data.prim with parameters of type ACell -
Uses of ACell in convex.core.data.type
Classes in convex.core.data.type with type parameters of type ACellModifier and TypeClassDescriptionclass
AStandardType<T extends ACell>
Base type for standard types mapped directly to a branch of ACell hierarchyMethods in convex.core.data.type that return ACellModifier and TypeMethodDescriptionAny.defaultValue()
abstract ACell
AType.defaultValue()
Gets the default value for this type.Nil.defaultValue()
Any.implicitCast
(ACell a) abstract ACell
AType.implicitCast
(ACell a) Gets the default value for this type.Nil.implicitCast
(ACell a) Methods in convex.core.data.type that return types with arguments of type ACellModifier and TypeMethodDescriptionAny.getJavaClass()
AType.getJavaClass()
Gets the Java common base class for all instances of this type.Nil.getJavaClass()
Number.getJavaClass()
Methods in convex.core.data.type with parameters of type ACellModifier and TypeMethodDescriptionboolean
boolean
boolean
abstract boolean
Checks if a value is an instance of this Type.boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
static AType
AddressType.implicitCast
(ACell a) Any.implicitCast
(ACell a) AStandardType.implicitCast
(ACell a) abstract ACell
AType.implicitCast
(ACell a) Gets the default value for this type.Blob.implicitCast
(ACell a) Boolean.implicitCast
(ACell a) CharacterType.implicitCast
(ACell a) ACollection
<?> Collection.implicitCast
(ACell a) ACountable
<?> Countable.implicitCast
(ACell a) DataStructure.implicitCast
(ACell a) Double.implicitCast
(ACell a) Function.implicitCast
(ACell a) IndexType.implicitCast
(ACell a) Integer.implicitCast
(ACell a) KeywordType.implicitCast
(ACell a) AList
<?> List.implicitCast
(ACell a) Long.implicitCast
(ACell a) Map.implicitCast
(ACell a) Nil.implicitCast
(ACell a) Number.implicitCast
(ACell a) OpCode.implicitCast
(ACell a) Record.implicitCast
(ACell a) ASequence
<?> Sequence.implicitCast
(ACell a) ASet
<?> Set.implicitCast
(ACell a) StringType.implicitCast
(ACell a) SymbolType.implicitCast
(ACell a) SyntaxType.implicitCast
(ACell a) Vector.implicitCast
(ACell a) -
Uses of ACell in convex.core.data.util
Classes in convex.core.data.util with type parameters of type ACellModifier and TypeClassDescriptionclass
SequenceSpliterator<T extends ACell>
class
VectorBuilder<T extends ACell>
Similar to Java StringBuilder designed for concatenating multiple small Vectors to produce a larger Vector.Fields in convex.core.data.util declared as ACell -
Uses of ACell in convex.core.exceptions
Methods in convex.core.exceptions with type parameters of type ACellModifier and TypeMethodDescription<T extends ACell>
SignedData<T> BadSignatureException.getSignature()
-
Uses of ACell in convex.core.lang
Classes in convex.core.lang with type parameters of type ACellModifier and TypeClassDescriptionclass
Base class for functions expressed as values "You know what's web-scale? The Web.class
Abstract base class for CVM operations "...that was the big revelation to me when I was in graduate school—when I finally understood that the half page of code on the bottom of page 13 of the Lisp 1.5 manual was Lisp in itself.interface
Interface for invokable objects with function interface.Subclasses of ACell in convex.core.langModifier and TypeClassDescriptionclass
Base class for functions expressed as values "You know what's web-scale? The Web.class
Abstract base class for CVM operations "...that was the big revelation to me when I was in graduate school—when I finally understood that the half page of code on the bottom of page 13 of the Lisp 1.5 manual was Lisp in itself.Fields in convex.core.lang with type parameters of type ACellModifier and TypeFieldDescriptionstatic final CoreFn
<ADataStructure<ACell>> Core.ASSOC
Core.ASSOC_IN
Core.CALL_STAR
Core.COMPILE
Core.CONCAT
static final CoreFn
<ADataStructure<ACell>> Core.CONJ
Core.CONS
Core.CORE_FORMS
Mapping from implicit symbols like #%count to core definitionsCore.DIFFERENCE
Core.DISJ
Core.EMPTY
Context.EMPTY_BINDINGS
Core.ENVIRONMENT
Default initial environment metadata importing core namespaceCore.EVAL
Core.EVAL_AS
Core.EXPAND
Core.FIRST
Core.GET
Core.GET_HOLDING
Core.GET_IN
Compiler.INITIAL_EXPANDER
Initial expander used for expansion of forms prior to compilation.Core.INITIAL_EXPANDER
Core.INTERSECTION
static final CoreFn
<ADataStructure<ACell>> Core.INTO
Core.KEYS
Core.LAST
Core.LIST
Core.LOOKUP
Core.MERGE
Core.MERGE
Core.META
Core.META
Core.METADATA
Default initial core metadataCore.METADATA
Default initial core metadataCore.NEXT
Core.NTH
Core.QUERY_AS
Core.QUOTE
Expander used for expansion of `quote` forms.Core.REDUCE
Core.REDUCED
Core.REVERSE
Core.SECOND
Core.SET
Core.SET_CONTROLLER
Core.SET_HOLDING
Core.SET_PARENT
Core.SLICE
Core.UNDEF_STAR
Core.UNION
Core.UNSYNTAX
Core.VALUES
Core.VEC
Core.VECTOR
Methods in convex.core.lang with type parameters of type ACellModifier and TypeMethodDescriptionRT.allEqual
(T[] values) Returns true if all elements in an array are equal.static <R extends ACell>
ADataStructure<R> RT.assoc
(ADataStructure<R> coll, ACell key, ACell value) Associates a key position with a given value in an associative data structureRT.castFunction
(ACell a) Coerces an argument to a function interface.Converts any collection to a setRT.castVector
(ACell o) Converts any countable data structure to a vector.Prepends an element to a sequential data structure to create a new list.Prepends two elements to a sequential data structure.Prepends three elements to a sequential data structure.static <T extends ACell>
TConverts a Java value to a CVM type.RT.ensureBlobLike
(ACell a) static <E extends ACell>
ACountable<E> RT.ensureCountable
(ACell a) Casts to an ACountable instancestatic <E extends ACell>
ADataStructure<E> RT.ensureDataStructure
(ACell a) Casts to an ADataStructure instanceRT.ensureFunction
(ACell a) Ensure the argument is a valid CVM function.RT.ensureHashMap
(ACell a) Casts the argument to a hashmap.RT.ensureHashMap
(ACell a) Casts the argument to a hashmap.Converts the argument to a non-null Map.Converts the argument to a non-null Map.RT.ensureMapEntry
(ACell x) Converts an object to a map entry.RT.ensureMapEntry
(ACell x) Converts an object to a map entry.RT.ensureSequence
(ACell o) Ensures argument is a sequence data structure.Ensures the value is a Set.RT.ensureVector
(ACell o) Ensures argument is a Vector data structure.Executes an op as a top level instruction (no local bindings)<R extends ACell>
RContext.getResult()
Gets the result from this context.Returns a Vector of keys of a Map, or null if the object is not a Map WARNING: Potentially O(n) in size of Map<T extends ACell>
TContext.lookupValue
(String symName) Looks up value for the given symbol in this contextstatic <T extends ACell>
TGets the nth element from a sequential collection.static <T extends ACell>
TVariant of nth that also handles Java Arrays.Reads an Op from the given Blob.static <R extends ACell>
RParses an expression and returns a canonical Cell representing a formConverts any collection of cells into a Sequence data structure.Returns the vector of values of a map, or null if the object is not a mapRT.vec
(ACollection<T> coll) Converts any collection to a vector.Converts any data structure to a vectorMethods in convex.core.lang that return ACellModifier and TypeMethodDescriptionstatic ACell
RT.get
(ADataStructure<?> coll, ACell key) Gets an element from a data structure using the given key.static ACell
RT.get
(ADataStructure<?> coll, ACell key, ACell notFound) Gets an element from a data structure using the given key.Context.getErrorCode()
Gets the error code of this context's return valueprotected ACell
Context.ChainState.getScope()
Context.getScope()
Gets the scope of the currently executing context.Context.lookupValue
(Address address, Symbol sym) Looks up value for the given symbol in this contextContext.lookupValue
(Symbol sym) Looks up value for the given symbol in this contextstatic ACell
Gets the minimum of a set of numeric valuesstatic ACell
Gets the minimum of two numeric valuesstatic ACell
Gets the minimum of a set of numeric valuesstatic ACell
Gets the minimum of two numeric valuesstatic ACell
Read a Core definition from an encodingstatic ACell
Parses an expression and returns a form as an Objectstatic ACell
Reader.readResource
(String path) static ACell
Reader.readResourceAsData
(String path) static ACell
Gets the signum of a numeric valueAOp.toCanonical()
Methods in convex.core.lang that return types with arguments of type ACellModifier and TypeMethodDescriptionCreate code for a CNS update callContext.getEnvironment()
Gets the current EnvironmentContext.getHoldings()
Gets the holdings map for the current account.Context.getLocalBindings()
Context.getLog()
Gets the log map for the current context.Context.ChainState.getMetadata()
Context.ChainState.getMetadata()
Context.getMetadata()
Gets the metadata for the current AccountContext.getMetadata()
Gets the metadata for the current AccountContext.lookupDynamicEntry
(Address address, Symbol sym) Looks up an environment entry for a specific address without consuming juice.Context.lookupExpander
(ACell form) Looks up an expander from a form in this contextContext.lookupMeta
(Address address, Symbol sym) Looks up Metadata for the given symbol in this contextContext.lookupMeta
(Address address, Symbol sym) Looks up Metadata for the given symbol in this contextContext.lookupMeta
(Symbol sym) Looks up Metadata for the given symbol in this contextContext.lookupMeta
(Symbol sym) Looks up Metadata for the given symbol in this contextParses an String to returns a list of raw formsMethods in convex.core.lang with parameters of type ACellModifier and TypeMethodDescriptionstatic APrimitive
Gets the absolute value of a numeric value.Executes a call to an Actor.Executes a call to an Actor.RT.allEqual
(T[] values) Returns true if all elements in an array are equal.static <R extends ACell>
ADataStructure<R> RT.assoc
(ADataStructure<R> coll, ACell key, ACell value) Associates a key position with a given value in an associative data structurestatic boolean
Converts any CVM value to a boolean value.static Address
RT.callableAddress
(ACell a) Gets a callable Address from a cell value.static AccountKey
RT.castAccountKey
(ACell a) Coerce to an AccountKey.static Address
RT.castAddress
(ACell a) Casts the argument to a valid Address.static ABlob
Converts an object to a canonical blob representation.static CVMLong
Explicitly converts a numerical value to a CVM Byte.static CVMDouble
RT.castDouble
(ACell a) Converts a numerical value to a CVM Double.RT.castFunction
(ACell a) Coerces an argument to a function interface.static AInteger
RT.castInteger
(ACell a) Converts a numerical value to a CVM Integer.static Keyword
RT.castKeyword
(ACell a) Coerces an named value to a Keyword.static CVMLong
Converts a numerical value to a CVM Long.Converts any collection to a setRT.castVector
(ACell o) Converts any countable data structure to a vector.static CVMDouble
Gets the ceiling of a number after casting to a Double.static Class
<?> RT.commonNumericType
(ACell[] args) Get the target common numeric type for a given set of arguments.static Long
Compares two objects representing numbers numerically.Compile a form in this Context.Prepends two elements to a sequential data structure.Prepends three elements to a sequential data structure.static long
Juice.costNumeric
(ACell a) Gets the base cost for a numeric argument, basically the length in bytes (min 8)static Long
Gets the count of elements in a countable data structure.static Context.ChainState
Context.ChainState.create
(State state, Address origin, Address caller, Address address, long offer, ACell scope) Defines a value in the environment of the current addressContext.defineWithSyntax
(Syntax syn, ACell value) Defines a value in the environment of the current address, updating the metadataDeploys a new account.static CVMDouble
static AccountKey
RT.ensureAccountKey
(ACell a) Implicit cast to an AccountKey.static Address
RT.ensureAddress
(ACell a) Ensures the argument is a valid Address.static ADataStructure
<?> RT.ensureAssociative
(ACell o) Ensures the argument is an associative data structure instance.static ABlob
RT.ensureBlob
(ACell a) Implicitly casts the argument to a BlobRT.ensureBlobLike
(ACell a) static CVMChar
RT.ensureChar
(ACell a) Implicitly casts argument to a CVM Characterstatic <E extends ACell>
ACountable<E> RT.ensureCountable
(ACell a) Casts to an ACountable instancestatic <E extends ACell>
ADataStructure<E> RT.ensureDataStructure
(ACell a) Casts to an ADataStructure instancestatic CVMDouble
RT.ensureDouble
(ACell a) Ensures the argument is a CVM Double value.RT.ensureFunction
(ACell a) Ensure the argument is a valid CVM function.static Hash
RT.ensureHash
(ACell o) Coerces to Hash type.RT.ensureHashMap
(ACell a) Casts the argument to a hashmap.static AInteger
RT.ensureInteger
(ACell a) Ensures the argument is a CVM Integer value.static CVMLong
RT.ensureLong
(ACell a) Ensures the argument is a CVM Integer within Long range.Converts the argument to a non-null Map.RT.ensureMapEntry
(ACell x) Converts an object to a map entry.static ANumeric
RT.ensureNumber
(ACell a) Converts a CVM value to the standard numeric representation.RT.ensureSequence
(ACell o) Ensures argument is a sequence data structure.Ensures the value is a Set.static AString
RT.ensureString
(ACell a) Ensures the argument is a CVM Stringstatic Symbol
RT.ensureSymbol
(ACell a) Ensures the argument is a Symbol.static ATransaction
RT.ensureTransaction
(ACell maybeTx) Casts to a transaction record, or null if not castableRT.ensureVector
(ACell o) Ensures argument is a Vector data structure.static CVMBool
boolean
boolean
Executes a form in the current context.Evaluates a form as another Address.Context.executeLocalBinding
(ACell bindingForm, AOp<?> op) Execute an op, and bind the result to the given binding form in the lexical environment Binding form may be a destructuring formstatic CVMDouble
Computes the result of a exp operation.Expands a form with the default *initial-expander*Context.expandCompile
(ACell form) Expand and compile a form in this Context.static int
RT.findNonNumeric
(ACell[] args) Finds the first non-numeric value in an array.static CVMDouble
Gets the floor a number after casting to a double.static CVMBool
static ACell
RT.get
(ADataStructure<?> coll, ACell key) Gets an element from a data structure using the given key.static ACell
RT.get
(ADataStructure<?> coll, ACell key, ACell notFound) Gets an element from a data structure using the given key.static AType
Get the runtime Type of any CVM valuestatic CVMBool
abstract Context
Invokes a function within this context, returning an updated context.Invoke this function in the given context.static boolean
Tests if a value is one of the canonical boolean values 'true' or 'false'static boolean
RT.isCountable
(ACell val) protected static boolean
Compiler.isListStarting
(Symbol element, ACell form) Returns true if the form is a List starting with value equal to the the specified elementstatic boolean
static boolean
Tests if a Value is a valid numerical value type.static <T> T
Converts a CVM value to equivalent JSON value as expressed in equivalent JVM types.static String
Gets a String from a value suitable for use as a JSON map keystatic <T> T
Converts a CVM value to equivalent JVM valueReturns a Vector of keys of a Map, or null if the object is not a Map WARNING: Potentially O(n) in size of Mapstatic CVMBool
Context.lookupExpander
(ACell form) Looks up an expander from a form in this contextstatic CVMBool
static ACell
Gets the minimum of a set of numeric valuesstatic ACell
Gets the minimum of two numeric valuesstatic ACell
Gets the minimum of a set of numeric valuesstatic ACell
Gets the minimum of two numeric valuesstatic ANumeric
static ANumeric
static AString
Gets the name from a CVM value.static <T extends ACell>
TGets the nth element from a sequential collection.static Class
<?> RT.numericType
(ACell a) Gets the numeric class of an objectstatic ANumeric
static CVMDouble
Computes the result of a pow operation.static long
Juice.precostNumericLinear
(ACell[] args) Pre-costs a sequence of numeric arguments for addition / multiplicationstatic long
Juice.precostNumericMultiply
(ACell[] args) Pre-costs a sequence of numeric arguments for multiplicationstatic long
Juice.priceMemorySize
(ACell a) Calculate price for memory size, mainly used for transaction overhead coststatic AString
Prints a value to a String as long as the result fits within a given print limit.static AString
Prints a cell to a BlobBuilder, up to a specified limit of bytes WARNING: May return nullstatic boolean
RT.print
(BlobBuilder bb, ACell a, long limit) Prints a cell to a BlobBuilder, up to a specified limit of bytesExecutes code as if run in the specified account, but always rolling back state changes.Create code to quote an arbitrary formExecutes a form at the top level.Converts any collection of cells into a Sequence data structure.Context.setController
(ACell address) Sets the controller for the current AccountContext.setHolding
(Address targetAddress, ACell value) Sets the holding for a specified target account.static ACell
Gets the signum of a numeric valuestatic CVMDouble
Gets the exact positive square root of a number after casting to a Double.static AString
Converts a value to a CVM String representation.static AString
Converts arguments to an AString representation.boolean
AFn.supportsArgs
(ACell[] args) Tests if this function supports the given argument list By default, checks if the function supports the given arity only.static String
Converts a value to a Java String representationstatic String
Converts a value to a Java String representationContext.updateBindings
(ACell bindingForm, Object args) Updates local bindings with a given binding formstatic void
RT.validateCell
(ACell o) Validate a Cell.Returns the vector of values of a map, or null if the object is not a mapContext.withCastError
(int argIndex, ACell[] args, AType klass) Context.withCastError
(ACell a, AType klass) Context.withCastError
(ACell a, String message) Context.withResult
(long gulp, ACell value) Context.withResult
(ACell value) Returns a context updated with the specified result.Method parameters in convex.core.lang with type arguments of type ACellModifier and TypeMethodDescriptionAppends a log entry for the current address.Context.compileAll
(ASequence<ACell> forms) Compiles a sequence of forms in the current context.static long
Juice.costBuildStructure
(ACountable<ACell> counted, long n) Computes the data build cost of a countable structure of given lengthContext.setPeerData
(AccountKey peerKey, AHashMap<ACell, ACell> data) Sets peer data.Context.setPeerData
(AccountKey peerKey, AHashMap<ACell, ACell> data) Sets peer data.Context.ChainState.withEnvironment
(AHashMap<Symbol, ACell> newEnvironment, AHashMap<Symbol, AHashMap<ACell, ACell>> newMeta) Context.withLocalBindings
(AVector<ACell> newBindings) Updates this Context with new local bindings.Constructors in convex.core.lang with parameters of type ACellModifierConstructorDescriptionprotected
Context
(Context.ChainState chainState, long juice, long juiceLimit, AVector<ACell> localBindings2, ACell result, int depth, AExceptional exception, AVector<AVector<ACell>> log, Context.CompilerState comp) Constructor parameters in convex.core.lang with type arguments of type ACellModifierConstructorDescriptionprotected
Context
(Context.ChainState chainState, long juice, long juiceLimit, AVector<ACell> localBindings2, ACell result, int depth, AExceptional exception, AVector<AVector<ACell>> log, Context.CompilerState comp) -
Uses of ACell in convex.core.lang.impl
Classes in convex.core.lang.impl with type parameters of type ACellModifier and TypeClassDescriptionclass
Abstract base class for functions that can close over a lexical environment.class
Abstract base class for data structure lookup functions.class
Abstract base class for core language functions implemented in the Runtime Core functions are tagged using their symbols in on-chain representationclass
Value class representing a instantiated closure / lambda function.class
Class representing a halt return value "Computers are useless.class
class
class
class
class
ReturnValue<T extends ACell>
Class representing a function return value "Computers are useless.class
RollbackValue<T extends ACell>
Class representing a function return value "Computers are useless.class
Wrapper for interpreting a sequence object as an invokable functionclass
Subclasses of ACell in convex.core.lang.implModifier and TypeClassDescriptionclass
Abstract base class for functions that can close over a lexical environment.class
Abstract base class for data structure lookup functions.class
Abstract base class for core language functions implemented in the Runtime Core functions are tagged using their symbols in on-chain representationclass
Abstract base class for core predicate functionsclass
Value class representing a instantiated closure / lambda function.class
class
class
class
Wrapper for interpreting a sequence object as an invokable functionclass
Fields in convex.core.lang.impl declared as ACellFields in convex.core.lang.impl with type parameters of type ACellMethods in convex.core.lang.impl with type parameters of type ACellModifier and TypeMethodDescriptionCoreFn.getRef
(int i) Fn.getRef
(int i) MultiFn.getRef
(int i) Decodes a function instance from a Blob encoding.Decodes a MultiFn instance from a Blob encodingHaltValue.wrap
(T value) static <T extends ACell>
ReturnValue<T> ReturnValue.wrap
(T value) static <T extends ACell>
RollbackValue<T> RollbackValue.wrap
(T value) Methods in convex.core.lang.impl that return ACellModifier and TypeMethodDescriptionabstract ACell
AExceptional.getCode()
Returns the Exception code for this exceptional valueErrorValue.getCode()
Gets the Error Code for this ErrorValue instance.HaltValue.getCode()
RecurValue.getCode()
Reduced.getCode()
ReturnValue.getCode()
RollbackValue.getCode()
TailcallValue.getCode()
ErrorValue.getLog()
Gets the CVM local log at the time of the Error.abstract ACell
AExceptional.getMessage()
Gets the message for an exceptional value.ErrorValue.getMessage()
Gets the optional message associated with this error value, or null if not supplied.HaltValue.getMessage()
RecurValue.getMessage()
Reduced.getMessage()
ReturnValue.getMessage()
RollbackValue.getMessage()
TailcallValue.getMessage()
ATrampoline.getValue
(int i) Reduced.getValue()
ACell[]
ATrampoline.getValues()
ADataFn.toCanonical()
Fn.toCanonical()
Methods in convex.core.lang.impl that return types with arguments of type ACellModifier and TypeMethodDescriptionFn.getParams()
Returns the declared param names for a function.Methods in convex.core.lang.impl with parameters of type ACellModifier and TypeMethodDescriptionvoid
Stores the CVM local log at the point of the errorstatic ErrorValue
static ErrorValue
Creates an ErrorValue with the specified type and message.static ErrorValue
Creates an ErrorValue with the specified type and message.static ErrorValue
Creates an ErrorValue with the specified type and message.boolean
abstract Context
abstract boolean
static RecurValue
Wraps an object array as a RecurValuestatic Reduced
static TailcallValue
Method parameters in convex.core.lang.impl with type arguments of type ACellModifier and TypeMethodDescriptionAClosure.withEnvironment
(AVector<ACell> env) Produces an copy of this closure with the specified environmentFn.withEnvironment
(AVector<ACell> env) MultiFn.withEnvironment
(AVector<ACell> env) Constructors in convex.core.lang.impl with parameters of type ACellConstructor parameters in convex.core.lang.impl with type arguments of type ACell -
Uses of ACell in convex.core.lang.ops
Classes in convex.core.lang.ops with type parameters of type ACellModifier and TypeClassDescriptionclass
Abstract base class for Ops with multiple nested operations MultiOps may selectively evaluate sub-expressions.class
Op representing a conditional expression.class
Operation representing a constant value "One man's constant is another man's variable." - Alan Perlisclass
Op that creates a definition in the current environment.class
Op for executing a sequence of child operations in order "Design is to take things apart in such a way that they can be put back together" - Rich Hickeyclass
Op representing the invocation of a function.class
Op responsible for creating a new function (closure).class
Op for executing a body after lexically binding one or more symbols.class
Op to look up a local value from the lexical environmentclass
Op to look up a Symbol in the current execution context.class
Op for executing a sequence of child operations in order in query mode (no state changes) "Design is to take things apart in such a way that they can be put back together" - Rich Hickeyclass
Op to set a lexical value in the local execution context.class
Op representing special Symbols like *address* and *caller*Subclasses of ACell in convex.core.lang.opsModifier and TypeClassDescriptionclass
Abstract base class for Ops with multiple nested operations MultiOps may selectively evaluate sub-expressions.class
Op representing a conditional expression.class
Operation representing a constant value "One man's constant is another man's variable." - Alan Perlisclass
Op that creates a definition in the current environment.class
Op for executing a sequence of child operations in order "Design is to take things apart in such a way that they can be put back together" - Rich Hickeyclass
Op representing the invocation of a function.class
Op responsible for creating a new function (closure).class
Op for executing a body after lexically binding one or more symbols.class
Op to look up a local value from the lexical environmentclass
Op to look up a Symbol in the current execution context.class
Op for executing a sequence of child operations in order in query mode (no state changes) "Design is to take things apart in such a way that they can be put back together" - Rich Hickeyclass
Op to set a lexical value in the local execution context.class
Op representing special Symbols like *address* and *caller*Fields in convex.core.lang.ops with type parameters of type ACellMethods in convex.core.lang.ops with type parameters of type ACellModifier and TypeMethodDescriptionCreate a Cond operation with the given nested operationsConstant.create
(T value) Local.create
(long position) Creates Local to look up a lexical value in the given positionCreates Set Op for the given opCodeConstant.createFromRef
(Ref<T> valueRef) Gets the special Op for a given Symbol, or null if not foundAMultiOp.getRef
(int i) Constant.getRef
(int i) Lambda.getRef
(int i) Let.getRef
(int i) Lookup.getRef
(int i) Constant.nil()
Constant.of
(T value) Decodes a Cond op from a Blob encoding.Decodes a Def op from a Blob encodingDecodes a Do op from a Blob encodingRead an Invoke Op from a Blob encodingRead a Let Op from a Blob encodingReads a Lookup op from a Blob encodingRead a Query Op from a Blob encodingReads a Set Op from a Blob encodingMethods in convex.core.lang.ops with parameters of type ACellModifier and TypeMethodDescriptionMethod parameters in convex.core.lang.ops with type arguments of type ACellModifier and TypeMethodDescriptionRecreates this object with an updated list of child Ops.Constructor parameters in convex.core.lang.ops with type arguments of type ACellModifierConstructorDescriptionprotected
protected
protected
protected
protected
protected
-
Uses of ACell in convex.core.lang.reader
Methods in convex.core.lang.reader with type parameters of type ACellMethods in convex.core.lang.reader that return ACellModifier and TypeMethodDescriptionstatic ACell
static ACell
static ACell
AntlrReader.read
(org.antlr.v4.runtime.CharStream cs) static ACell
ReaderUtils.specialLiteral
(String s) Methods in convex.core.lang.reader that return types with arguments of type ACellModifier and TypeMethodDescriptionReaderUtils.interpretMetadata
(ACell metaNode) Converts a metadata object according to the following rule: - Map -> unchanged - Keyword -> {:keyword true} - Any other expression -> {:tag expression}ReaderUtils.interpretMetadata
(ACell metaNode) Converts a metadata object according to the following rule: - Map -> unchanged - Keyword -> {:keyword true} - Any other expression -> {:tag expression}AntlrReader.CRListener.popList()
AntlrReader.readAll
(org.antlr.v4.runtime.CharStream cs) Methods in convex.core.lang.reader with parameters of type ACellModifier and TypeMethodDescriptionReaderUtils.interpretMetadata
(ACell metaNode) Converts a metadata object according to the following rule: - Map -> unchanged - Keyword -> {:keyword true} - Any other expression -> {:tag expression}void
-
Uses of ACell in convex.core.store
Methods in convex.core.store with type parameters of type ACellModifier and TypeMethodDescriptionACachedStore.checkCache
(Hash h) AStore.checkCache
(Hash h) checks in-memory cache for a stored Ref.MemoryStore.checkCache
(Hash h) final <T extends ACell>
Tabstract <T extends ACell>
TDecodes a Cell from an Encoding.final <T extends ACell>
T<T extends ACell>
TAStore.getRootData()
Gets the Root Data from the Store.<T extends ACell>
TMemoryStore.getRootData()
AStore.getRootRef()
Gets a Ref for Root Data.MemoryStore.persistRef
(Ref<T> ref, Consumer<Ref<ACell>> noveltyHandler, int requiredStatus, boolean topLevel) AStore.refForHash
(Hash hash) Gets the stored Ref for a given hash value, or null if not found in the store.MemoryStore.refForHash
(Hash hash) AStore.setRootData
(T data) Sets the root data for this StoreMemoryStore.setRootData
(T data) Stores a @Ref in long term storage as defined by this store implementation.AStore.storeTopRef
(Ref<T> ref, int status, Consumer<Ref<ACell>> noveltyHandler) Stores a top level @Ref in long term storage as defined by this store implementation.MemoryStore.storeTopRef
(Ref<T> ref, int status, Consumer<Ref<ACell>> noveltyHandler) Methods in convex.core.store that return ACellMethods in convex.core.store with parameters of type ACellMethod parameters in convex.core.store with type arguments of type ACellModifier and TypeMethodDescriptionMemoryStore.persistRef
(Ref<T> ref, Consumer<Ref<ACell>> noveltyHandler, int requiredStatus, boolean topLevel) Stores a @Ref in long term storage as defined by this store implementation.AStore.storeTopRef
(Ref<T> ref, int status, Consumer<Ref<ACell>> noveltyHandler) Stores a top level @Ref in long term storage as defined by this store implementation.MemoryStore.storeTopRef
(Ref<T> ref, int status, Consumer<Ref<ACell>> noveltyHandler) -
Uses of ACell in convex.core.transactions
Subclasses of ACell in convex.core.transactionsModifier and TypeClassDescriptionclass
Abstract base class for immutable transactions Transactions may modify the on-chain State according to the rules of the specific transaction type.class
Transaction representing a Call to an Actor.class
Transaction class representing the Invoke of an on-chain operation.class
The Multi class enables multiple child transactions to be grouped into a single wrapper transaction with useful joint execution semantics.class
Transaction class representing a coin Transfer from one account to anotherFields in convex.core.transactions declared as ACellFields in convex.core.transactions with type parameters of type ACellMethods in convex.core.transactions with type parameters of type ACellModifier and TypeMethodDescriptionCall.getRef
(int i) Invoke.getRef
(int i) Multi.getRef
(int i) Transfer.getRef
(int i) Methods in convex.core.transactions that return ACellMethods in convex.core.transactions with parameters of type ACellMethod parameters in convex.core.transactions with type arguments of type ACellModifier and TypeMethodDescriptionstatic Call
Call.create
(Address address, long sequence, Address target, long offer, Symbol functionName, AVector<ACell> args) static Call
Call.create
(Address address, long sequence, Address target, Symbol functionName, AVector<ACell> args) Constructors in convex.core.transactions with parameters of type ACellConstructor parameters in convex.core.transactions with type arguments of type ACell -
Uses of ACell in convex.core.util
Methods in convex.core.util with type parameters of type ACellModifier and TypeMethodDescriptionstatic <T extends ACell,
U>
longUtils.binarySearch
(ASequence<T> data, Function<? super T, U> value, Comparator<U> comparator, U target) Binary Search for an exact or approximate (leftmost) value.static <T extends ACell,
U>
TUtils.binarySearchLeftmost
(ASequence<T> L, Function<? super T, U> value, Comparator<U> comparator, U target) Leftmost Binary Search.Methods in convex.core.util with parameters of type ACell -
Uses of ACell in convex.dlfs
Methods in convex.dlfs that return types with arguments of type ACellModifier and TypeMethodDescriptionDLFSNode.createDirectory
(CVMLong timestamp) DLFSNode.createEmptyFile
(CVMLong timestamp) DLFileSystem.createFile
(DLPath path) Creates a file, returning the new nodeDLFSNode.createTombstone
(CVMLong timestamp) DLFSNode.getDirectoryEntries
(AVector<ACell> dirNode) Gets the directory entries for a nodeDLFSNode.getDirectoryEntry
(AVector<ACell> node, AString name) Gets DLFS node for the given pathMerges two DLFS nodes recursively.Navigate down a path relative to a DLFS Node.DLFileSystem.updateNode
(DLPath path, AVector<ACell> newNode) Updates a node, returning the new nodeUpdate a node at a path relative to a root nodeMethod parameters in convex.dlfs with type arguments of type ACellModifier and TypeMethodDescriptionstatic ABlob
Gets the data from a DLFS file node, or nil if not a regular FileDLFSNode.getDirectoryEntries
(AVector<ACell> dirNode) Gets the directory entries for a nodeDLFSNode.getDirectoryEntry
(AVector<ACell> node, AString name) static Blob
DLFSNode.getMetaData
(AVector<ACell> node) Gets the metadata from a DLFS nodestatic CVMLong
Gets the metadata from a DLFS nodestatic boolean
DLFSNode.isDirectory
(AVector<ACell> node) static boolean
DLFSNode.isRegularFile
(AVector<ACell> node) static boolean
DLFSNode.isTombstone
(AVector<ACell> node) Returns true iff the node is a DLFS tombstoneabstract void
Merges another DLFS drive into this oneMerges two DLFS nodes recursively.Navigate down a path relative to a DLFS Node.DLFileSystem.updateNode
(DLPath path, AVector<ACell> newNode) Updates a node, returning the new nodeUpdate a node at a path relative to a root node -
Uses of ACell in convex.dlfs.impl
Methods in convex.dlfs.impl that return types with arguments of type ACellModifier and TypeMethodDescriptionDLFSLocal.createFile
(DLPath path) DLFileChannel.updateNode
(AVector<ACell> newNode) DLFSLocal.updateNode
(DLPath dir, AVector<ACell> newNode) Method parameters in convex.dlfs.impl with type arguments of type ACellModifier and TypeMethodDescriptionstatic DLDirectoryStream
static DLFSFileAttributes
void
DLFileChannel.updateNode
(AVector<ACell> newNode) DLFSLocal.updateNode
(DLPath dir, AVector<ACell> newNode) Constructor parameters in convex.dlfs.impl with type arguments of type ACellModifierConstructorDescriptionDLFSFileAttributes
(AVector<ACell> node) DLFSLocal
(DLFSProvider dlfsProvider, String uriPath, AVector<ACell> rootNode) -
Uses of ACell in etch
Modifier and TypeMethodDescriptionprotected <T extends ACell>
voidEtchStore.addToCache
(Ref<T> ref) Etch.read
(AArrayBlob key) Reads a Blob from the database, returning null if not foundEtch.read
(AArrayBlob key, long pointer) <T extends ACell>
TEtch.readCell
(long ptr) Reads a Cell from the specified location in an Etch file.EtchStore.readStoreRef
(Hash hash) EtchStore.refForHash
(Hash hash) EtchStore.setRootData
(T data) EtchStore.storeRef
(Ref<T> ref, int requiredStatus, Consumer<Ref<ACell>> noveltyHandler, boolean topLevel) EtchStore.storeTopRef
(Ref<T> ref, int status, Consumer<Ref<ACell>> noveltyHandler) Modifier and TypeMethodDescriptionEtch.write
(AArrayBlob key, Ref<ACell> value) Writes a key / value pair to the immutable store.Modifier and TypeMethodDescriptionprotected abstract void
Modifier and TypeMethodDescriptionEtchStore.storeRef
(Ref<T> ref, int requiredStatus, Consumer<Ref<ACell>> noveltyHandler, boolean topLevel) EtchStore.storeTopRef
(Ref<T> ref, int status, Consumer<Ref<ACell>> noveltyHandler) Etch.write
(AArrayBlob key, Ref<ACell> value) Writes a key / value pair to the immutable store.