Package: com.multiversesocial.hyperview
Class: com.multiversesocial.hyperview.ClassFieldLink
Source: src/com/multiversesocial/hyperview/ClassFieldLink.java
3 bits for Address Mode and 5 bits for type (0 -31). Address Type = \ / - /
public class ClassFieldLink extends DataType
| Declaration | Value / initializer | Description | Source |
|---|---|---|---|
static final int MAX_NEST_DEPTH | = 64 | No comment in source; used in fieldByteSize(); name appears in 1 other source file(s): Externalizer. | |
HyperLinkedList nestedFields | Nested schema for OBJECT / OBJECT_ARRAY / OBJECT_2D_ARRAY / OBJECT_3D_ARRAY (base type OBJECT). Each child is itself a ClassFieldLink (primitives or further OBJECT nesting). Null means no nested list yet; empty list means an object with zero fields (0 bytes). Added 2026-09-25. |
| Signature | Description | Source |
|---|---|---|
ClassFieldLink() | 1 statement(s); calls super(). | |
ClassFieldLink(byte tType) | 1 statement(s); calls super(). | |
ClassFieldLink(int tType) | 1 statement(s); calls super(). | |
ClassFieldLink(int tType, String tName) | 1 statement(s); calls super(). | |
ClassFieldLink(int tType, int tLength) | 1 statement(s); calls super(). | |
ClassFieldLink(int tType, int tWidth, int tHeight) | 1 statement(s); calls super(). | |
ClassFieldLink(int tType, int tWidth, int tHeight, int tDepth) | 1 statement(s); calls super(). |
| Signature | Description | Source |
|---|---|---|
int attachNestedField(ClassFieldLink child) | Attach a child field under this OBJECT* schema. Returns HyperLinkedList.items after store. | |
HyperLinkedList ensureNestedFields() | Ensure nestedFields exists (unnamed HyperLinkedList - not registered with SystemListRegistry). | |
static long fieldByteSize(ClassFieldLink f) | Bytes occupied by one field (OBJECT recurses into nestedFields; arrays multiply lengths). Cycle on the ancestor path, or depth > MAX_NEST_DEPTH, yields 0 for that node. | |
static long fieldByteSize(ClassFieldLink f, IdentityHashMap<ClassFieldLink,Boolean> path, int depth) | 16 statement(s); calls path.containsKey(), path.put(), fieldByteSize(), path.remove(). | |
boolean isObjectBase() | Returns ((type & TYPE_MASK) & 7) == OBJECT. | |
static long listByteSize(HyperLinkedList list) | 6 statement(s); calls fieldByteSize(). |
Fields: arrayLength0, arrayLength1, arrayLength2, type
Methods: requireNonNeg(int, String), setAddressing(int)
Fields: attachment, index, linkFlags, name, next, parentList, prev
Methods: inList(), setName(String)
instantiation — Externalizer.java, line 115
115 ClassFieldLink clf0 = new ClassFieldLink(BYTE,"testByte");
static call — ObjectRegistry.java, line 417
417 objectSize += (int)ClassFieldLink.fieldByteSize(tClassFieldLink);