Documentation
¶
Overview ¶
Package taskcreated is the leeway-coded wire form of the spawn payload published once per task on `task.<id>.created`. Second broker DTO to migrate off the buscodec fxamacker-cbor default onto the ADR-0042 SoA codec (after keelson/runtime/codec/taskprogress).
Vocabulary reuse across task.* wire DTOs:
- vdd.MembTaskId — shared with keelson/runtime/codec/taskprogress; subject identifier carried by every task.* payload.
- vdd.MembTitle, vdd.MembAppId, vdd.MembTileKey, vdd.MembRunId — shared with future audit / event DTOs that join back to runtime lifecycle.
- Narrow memberships (`taskKind`, `taskCancellableB`, `taskEstimatedMs`) live in `keelson/vdd/keelson_dimdata_taskcreated.go`.
Wire shape vs the legacy task.TaskCreated JSON form:
- Field rename `Id TaskIdT` → `TaskId string` (subject id moves into a string-section tagged column; the plain `id` slot is the fact-row id).
- Field rename `AtMs` → `At` (codec plain `ts` is a `time.Time`; producers convert `time.Now().UnixMilli()` via `time.UnixMilli` at the wire boundary).
- New `FactId uint64` plain `id` (per-row event sequence; the existing producer leaves it zero until a real sequencer lands — matching the taskprogress precedent).
- Field rename `OwnerAppId app.AppIdT` → `OwnerAppId string` (codec field type is plain string; callers cast with `string(appId)` at construction).
Cardinality is ExactlyOne for every tagged field; Go zero values carry absence semantics (Title="" ⇒ no title, EstimatedMs=0 ⇒ no estimate, OwnerTileKey=0 ⇒ no tile context). Mirrors capabilitygrant's ExpiresAt sentinel approach instead of `option.Option[T]`.
Index ¶
- Variables
- func TaskCreatedAddSections[StringArrayAttr TaskCreatedStringArrayAttrI, ...](dml DML, row TaskCreated) (err error)
- func TaskCreatedBuildEntities[StringArrayAttr TaskCreatedStringArrayAttrI, ...](dml DML, c *TaskCreatedColumns) (err error)
- func TaskCreatedFillFromArrow[StringArrayAttrs TaskCreatedStringArrayAttrsReadI, ...](c *TaskCreatedColumns, n int, idCol *array.Uint64, nkCol *array.Binary, ...) (err error)
- type TaskCreated
- type TaskCreatedBoolAttrI
- type TaskCreatedBoolAttrsReadI
- type TaskCreatedBoolMembsReadI
- type TaskCreatedBoolSecI
- type TaskCreatedCodec
- type TaskCreatedColumns
- type TaskCreatedEntityI
- type TaskCreatedI64ArrayAttrI
- type TaskCreatedI64ArrayAttrsReadI
- type TaskCreatedI64ArrayMembsReadI
- type TaskCreatedI64ArraySecI
- type TaskCreatedStringArrayAttrI
- type TaskCreatedStringArrayAttrsReadI
- type TaskCreatedStringArrayMembsReadI
- type TaskCreatedStringArraySecI
- type TaskCreatedSymbolAttrI
- type TaskCreatedSymbolAttrsReadI
- type TaskCreatedSymbolMembsReadI
- type TaskCreatedSymbolSecI
- type TaskCreatedTextArrayAttrI
- type TaskCreatedTextArrayAttrsReadI
- type TaskCreatedTextArrayMembsReadI
- type TaskCreatedTextArraySecI
- type TaskCreatedU64ArrayAttrI
- type TaskCreatedU64ArrayAttrsReadI
- type TaskCreatedU64ArrayMembsReadI
- type TaskCreatedU64ArraySecI
Constants ¶
This section is empty.
Variables ¶
var PackageProps = packageprops.Props{ WASMWASI: packageprops.WASMBlocked, WASMJS: packageprops.WASMBlocked, WASMFreestanding: packageprops.WASMBlocked, }
PackageProps records this package's curated properties (ADR-0080). Seeded by `wasmsurvey props generate`; curate by hand, then `wasmsurvey props verify`.
var TaskCreatedActiveFields = sync.OnceValue(func() []int { active := map[string]bool{"bool": true, "i64Array": true, "stringArray": true, "symbol": true, "textArray": true, "u64Array": true} schema := cbdml.CreateSchemaFacts() out := make([]int, 0, 4+len(active)*8) for i, f := range schema.Fields() { name := f.Name switch { case strings.HasPrefix(name, "id:"), strings.HasPrefix(name, "ts:"), strings.HasPrefix(name, "lc:"): out = append(out, i) case strings.HasPrefix(name, "tv:"): rest := name[3:] colon := strings.IndexByte(rest, ':') if colon < 0 { continue } if active[rest[:colon]] { out = append(out, i) } } } return out })
TaskCreatedActiveFields is the column-index subset this kind populates in the boxer.facts Arrow schema. Lazily computed once via sync.OnceValue: scans cbdml.CreateSchemaFacts()'s tv:<section>:... field names against this kind's active sections plus the three plain prefixes (id:, ts:, lc:). Driven through RecordBuilder. SetActiveFields to skip per-row emit walks for unused columns.
var TaskCreatedActiveSections = []int{1, 7, 9, 10, 12, 18}
TaskCreatedActiveSections is the dml_cbor section-index subset this kind populates. Passed to InEntityFacts.SetActiveSections so the builder skips beginSection list-slot work for inactive sections.
Functions ¶
func TaskCreatedAddSections ¶ added in v0.0.17
func TaskCreatedAddSections[ StringArrayAttr TaskCreatedStringArrayAttrI, StringArraySec TaskCreatedStringArraySecI[StringArrayAttr, Ent], SymbolAttr TaskCreatedSymbolAttrI, SymbolSec TaskCreatedSymbolSecI[SymbolAttr, Ent], TextArrayAttr TaskCreatedTextArrayAttrI, TextArraySec TaskCreatedTextArraySecI[TextArrayAttr, Ent], U64ArrayAttr TaskCreatedU64ArrayAttrI, U64ArraySec TaskCreatedU64ArraySecI[U64ArrayAttr, Ent], BoolAttr TaskCreatedBoolAttrI, BoolSec TaskCreatedBoolSecI[BoolAttr, Ent], I64ArrayAttr TaskCreatedI64ArrayAttrI, I64ArraySec TaskCreatedI64ArraySecI[I64ArrayAttr, Ent], Ent any, DML TaskCreatedEntityI[ StringArrayAttr, StringArraySec, SymbolAttr, SymbolSec, TextArrayAttr, TextArraySec, U64ArrayAttr, U64ArraySec, BoolAttr, BoolSec, I64ArrayAttr, I64ArraySec, Ent, ], ](dml DML, row TaskCreated) (err error)
TaskCreatedAddSections contributes this kind's tagged sections to the OPEN entity on dml — the BuildEntities body without the entity frame. The caller owns BeginEntity / plain setters / CommitEntity.
func TaskCreatedBuildEntities ¶
func TaskCreatedBuildEntities[ StringArrayAttr TaskCreatedStringArrayAttrI, StringArraySec TaskCreatedStringArraySecI[StringArrayAttr, Ent], SymbolAttr TaskCreatedSymbolAttrI, SymbolSec TaskCreatedSymbolSecI[SymbolAttr, Ent], TextArrayAttr TaskCreatedTextArrayAttrI, TextArraySec TaskCreatedTextArraySecI[TextArrayAttr, Ent], U64ArrayAttr TaskCreatedU64ArrayAttrI, U64ArraySec TaskCreatedU64ArraySecI[U64ArrayAttr, Ent], BoolAttr TaskCreatedBoolAttrI, BoolSec TaskCreatedBoolSecI[BoolAttr, Ent], I64ArrayAttr TaskCreatedI64ArrayAttrI, I64ArraySec TaskCreatedI64ArraySecI[I64ArrayAttr, Ent], Ent any, DML TaskCreatedEntityI[ StringArrayAttr, StringArraySec, SymbolAttr, SymbolSec, TextArrayAttr, TextArraySec, U64ArrayAttr, U64ArraySec, BoolAttr, BoolSec, I64ArrayAttr, I64ArraySec, Ent, ], ](dml DML, c *TaskCreatedColumns) (err error)
TaskCreatedBuildEntities walks c row-by-row, drives dml's entity / section chain, and returns once every row has been committed. The dml argument's concrete type binds every type parameter via Go's type inference at the call site.
func TaskCreatedFillFromArrow ¶
func TaskCreatedFillFromArrow[ StringArrayAttrs TaskCreatedStringArrayAttrsReadI, StringArrayMembs TaskCreatedStringArrayMembsReadI, SymbolAttrs TaskCreatedSymbolAttrsReadI, SymbolMembs TaskCreatedSymbolMembsReadI, TextArrayAttrs TaskCreatedTextArrayAttrsReadI, TextArrayMembs TaskCreatedTextArrayMembsReadI, U64ArrayAttrs TaskCreatedU64ArrayAttrsReadI, U64ArrayMembs TaskCreatedU64ArrayMembsReadI, BoolAttrs TaskCreatedBoolAttrsReadI, BoolMembs TaskCreatedBoolMembsReadI, I64ArrayAttrs TaskCreatedI64ArrayAttrsReadI, I64ArrayMembs TaskCreatedI64ArrayMembsReadI, ]( c *TaskCreatedColumns, n int, idCol *array.Uint64, nkCol *array.Binary, tsCol *array.Timestamp, stringArrayAttrs StringArrayAttrs, stringArrayMembs StringArrayMembs, symbolAttrs SymbolAttrs, symbolMembs SymbolMembs, textArrayAttrs TextArrayAttrs, textArrayMembs TextArrayMembs, u64ArrayAttrs U64ArrayAttrs, u64ArrayMembs U64ArrayMembs, boolAttrs BoolAttrs, boolMembs BoolMembs, i64ArrayAttrs I64ArrayAttrs, i64ArrayMembs I64ArrayMembs, ) (err error)
TaskCreatedFillFromArrow walks rec row-by-row and appends each entity's plain + tagged-section values into c. Plain columns enter as concrete Arrow accessors; per-section Attrs + Membs bind through type-parameter interfaces.
Types ¶
type TaskCreated ¶
type TaskCreated struct {
// FactId is the per-row event id; distinct from TaskId (the
// subject of the fact).
FactId uint64 `lw:",id"`
// NaturalKey is the entity natural key; the facts SetId is 2-arg.
// These bus DTOs carry no separate key, so it stays the nil default.
NaturalKey []byte `lw:",naturalKey"`
// At is the event timestamp. time.Time matches the facts
// SetTimestamp signature directly (strict 1:1); the leeway wire
// truncates to u32 seconds, while the bus preserves full nanos.
At time.Time `lw:",ts"`
// TaskId is the per-task identifier (a nanoid by default; see
// task.TaskIdT). Shared string-section column across task.*
// wire DTOs.
TaskId string `lw:"taskId,stringArray"`
// Kind is the task's domain category (e.g. "ch.export").
// Symbol section because the value set is enumerable per
// deployment.
Kind string `lw:"taskKind,symbol"`
// Title is a short human-readable label for the task.
Title string `lw:"title,textArray"`
// OwnerAppId is the runtime app namespace that spawned the task.
// String section (app.AppIdT is opaque to the codec).
OwnerAppId string `lw:"appId,stringArray"`
// OwnerTileKey is the window/tile identifier for audit join-back
// to app-lifecycle facts. 0 means "no tile context".
OwnerTileKey uint64 `lw:"tileKey,u64Array"`
// OwnerRunId is the runtime-start identifier (nanoid/uuid) for
// audit join-back to runtime-lifecycle facts.
OwnerRunId string `lw:"runId,stringArray"`
// CancellableB declares whether the producer honours
// task.<id>.cancel publications.
CancellableB bool `lw:"taskCancellableB,bool"`
// EstimatedMs is the producer-supplied predicted duration in
// milliseconds. Zero means no estimate.
EstimatedMs int64 `lw:"taskEstimatedMs,i64Array"`
// contains filtered or unexported fields
}
TaskCreated is the wire payload published once at task spawn on subject `task.<id>.created`. Observers consume this to build their initial row before any TaskProgress arrives.
`OwnerAppId` / `OwnerTileKey` / `OwnerRunId` are populated by the host-supplied TaskApi (via MountContextI.Tasks()) so audit rows can join back to runtime-start (RunId) and app-lifecycle (TileKey) facts rows. Direct callers of task.Spawn that bypass the host TaskApi may leave these zero/empty; the supervisor and observers treat them as best-effort metadata.
func TaskCreatedReadRow ¶ added in v0.0.17
func TaskCreatedReadRow[ StringArrayAttrs TaskCreatedStringArrayAttrsReadI, StringArrayMembs TaskCreatedStringArrayMembsReadI, SymbolAttrs TaskCreatedSymbolAttrsReadI, SymbolMembs TaskCreatedSymbolMembsReadI, TextArrayAttrs TaskCreatedTextArrayAttrsReadI, TextArrayMembs TaskCreatedTextArrayMembsReadI, U64ArrayAttrs TaskCreatedU64ArrayAttrsReadI, U64ArrayMembs TaskCreatedU64ArrayMembsReadI, BoolAttrs TaskCreatedBoolAttrsReadI, BoolMembs TaskCreatedBoolMembsReadI, I64ArrayAttrs TaskCreatedI64ArrayAttrsReadI, I64ArrayMembs TaskCreatedI64ArrayMembsReadI, ]( i int, stringArrayAttrs StringArrayAttrs, stringArrayMembs StringArrayMembs, symbolAttrs SymbolAttrs, symbolMembs SymbolMembs, textArrayAttrs TextArrayAttrs, textArrayMembs TextArrayMembs, u64ArrayAttrs U64ArrayAttrs, u64ArrayMembs U64ArrayMembs, boolAttrs BoolAttrs, boolMembs BoolMembs, i64ArrayAttrs I64ArrayAttrs, i64ArrayMembs I64ArrayMembs, ) (row TaskCreated, present bool, err error)
TaskCreatedReadRow reads row i as one optional TaskCreated component: presence- gated (a row carrying none of the kind's memberships yields present=false), membership-matched. A slot carrying more attributes than this kind's shape admits is an error, for every shape including containers. Plain- bound fields stay zero — the caller owns the envelope. The Attrs/Membs readers bind by type inference at the call site, as with FillFromArrow.
type TaskCreatedBoolAttrI ¶
type TaskCreatedBoolAttrI interface {
dmlruntime.InAttributeMembershipLowCardRefPI
EndAttributeP()
}
TaskCreatedBoolAttrI is the InAttr-side view of the bool section. P-variants only — every method returns void so no F-bounded `[Self]` parameter is needed.
type TaskCreatedBoolAttrsReadI ¶
type TaskCreatedBoolAttrsReadI interface {
GetAttrValueValue(entityIdx raruntime.EntityIdx, attrIdx raruntime.AttributeIdx) bool
GetNumberOfAttributes(entityIdx raruntime.EntityIdx) int64
}
TaskCreatedBoolAttrsReadI is the Attributes-side view of the bool section.
type TaskCreatedBoolMembsReadI ¶
type TaskCreatedBoolMembsReadI interface {
GetMembValueLowCardRef(entityIdx raruntime.EntityIdx, attrIdx raruntime.AttributeIdx) iter.Seq[uint64]
}
TaskCreatedBoolMembsReadI is the Memberships-side view of the bool section.
type TaskCreatedBoolSecI ¶
type TaskCreatedBoolSecI[Attr any, Ent any] interface { BeginAttribute(value bool) Attr EndSection() Ent }
TaskCreatedBoolSecI is the Section-side view: opens an attribute and closes the section. Attr and Ent are bound at the call site by inference.
type TaskCreatedCodec ¶
type TaskCreatedCodec struct{}
TaskCreatedCodec is the buscodec.CodecI bridge for TaskCreated. Encodes one row through dml_cbor; decodes via cborarrow.Convert + ra-Unmarshal + Row(0). Auto-registered in init() so callers using buscodec.Encode / Decode route through here instead of the CBOR fallback.
func (*TaskCreatedCodec) ContentType ¶
func (inst *TaskCreatedCodec) ContentType() (ct string)
func (*TaskCreatedCodec) Name ¶
func (inst *TaskCreatedCodec) Name() (n string)
type TaskCreatedColumns ¶
type TaskCreatedColumns struct {
FactId []uint64
NaturalKey [][]byte
At []time.Time
TaskId []string
Kind []string
Title []string
OwnerAppId []string
OwnerTileKey []uint64
OwnerRunId []string
CancellableB []bool
EstimatedMs []int64
}
TaskCreatedColumns is the SoA storage for batches of TaskCreated rows. All slices grow in lockstep — Len returns the row count.
func (*TaskCreatedColumns) Append ¶
func (c *TaskCreatedColumns) Append(row TaskCreated)
Append pushes one AoS record into the SoA buffers.
Aliasing: slice and pointer fields (`[]T`, `*roaring.Bitmap`) are stored by reference, not copied. Callers must not mutate row.<F> after Append unless they want Marshal to read the mutation. Scalar fields (T, Option[T]) are copied by value.
func (*TaskCreatedColumns) Len ¶
func (c *TaskCreatedColumns) Len() int
Len returns the number of rows currently in the batch.
func (*TaskCreatedColumns) Marshal ¶
func (c *TaskCreatedColumns) Marshal(w io.Writer) (err error)
Marshal writes the SoA buffer to w as the sparse-CBOR wire format produced through factsschema/dml_cbor. Thin wrapper around TaskCreatedBuildEntities — the per-row chain lives there and works against any leeway-DML class that structurally satisfies TaskCreatedEntityI.
func (*TaskCreatedColumns) Row ¶
func (c *TaskCreatedColumns) Row(i int) (row TaskCreated)
Row reconstructs entity i as an AoS TaskCreated record. Inverse of Append: slice / pointer fields are shared by reference (no defensive copy); scalar fields and Option[T] are copied.
type TaskCreatedEntityI ¶
type TaskCreatedEntityI[ StringArrayAttr TaskCreatedStringArrayAttrI, StringArraySec TaskCreatedStringArraySecI[StringArrayAttr, Ent], SymbolAttr TaskCreatedSymbolAttrI, SymbolSec TaskCreatedSymbolSecI[SymbolAttr, Ent], TextArrayAttr TaskCreatedTextArrayAttrI, TextArraySec TaskCreatedTextArraySecI[TextArrayAttr, Ent], U64ArrayAttr TaskCreatedU64ArrayAttrI, U64ArraySec TaskCreatedU64ArraySecI[U64ArrayAttr, Ent], BoolAttr TaskCreatedBoolAttrI, BoolSec TaskCreatedBoolSecI[BoolAttr, Ent], I64ArrayAttr TaskCreatedI64ArrayAttrI, I64ArraySec TaskCreatedI64ArraySecI[I64ArrayAttr, Ent], Ent any, ] interface { BeginEntity() Ent SetId(id uint64, naturalKey []byte) Ent SetTimestamp(ts time.Time) Ent GetSectionStringArray() StringArraySec GetSectionSymbol() SymbolSec GetSectionTextArray() TextArraySec GetSectionU64Array() U64ArraySec GetSectionBool() BoolSec GetSectionI64Array() I64ArraySec CommitEntity() (err error) }
TaskCreatedEntityI is the entity-builder surface TaskCreatedAddSections drives. It always lists the per-section getters; the entity-frame methods (BeginEntity / plain setters / CommitEntity) are added only for the full codec's BuildEntities. AddSections stacks sections onto a frame the caller already owns, so it needs none of them — which lets a store drive it with a builder whose frame control is unexported (ADR-0100 SD6). Ent is the builder pointer.
type TaskCreatedI64ArrayAttrI ¶
type TaskCreatedI64ArrayAttrI interface {
dmlruntime.InAttributeMembershipLowCardRefPI
EndAttributeP()
}
TaskCreatedI64ArrayAttrI is the InAttr-side view of the i64Array section. P-variants only — every method returns void so no F-bounded `[Self]` parameter is needed.
type TaskCreatedI64ArrayAttrsReadI ¶
type TaskCreatedI64ArrayAttrsReadI interface {
GetAttrValueSingleOrDefault(entityIdx raruntime.EntityIdx, attrIdx raruntime.AttributeIdx) int64
GetNumberOfAttributes(entityIdx raruntime.EntityIdx) int64
}
TaskCreatedI64ArrayAttrsReadI is the Attributes-side view of the i64Array section.
type TaskCreatedI64ArrayMembsReadI ¶
type TaskCreatedI64ArrayMembsReadI interface {
GetMembValueLowCardRef(entityIdx raruntime.EntityIdx, attrIdx raruntime.AttributeIdx) iter.Seq[uint64]
}
TaskCreatedI64ArrayMembsReadI is the Memberships-side view of the i64Array section.
type TaskCreatedI64ArraySecI ¶
type TaskCreatedI64ArraySecI[Attr any, Ent any] interface { BeginAttributeSingle(value int64) Attr EndSection() Ent }
TaskCreatedI64ArraySecI is the Section-side view: opens an attribute and closes the section. Attr and Ent are bound at the call site by inference.
type TaskCreatedStringArrayAttrI ¶
type TaskCreatedStringArrayAttrI interface {
dmlruntime.InAttributeMembershipLowCardRefPI
EndAttributeP()
}
TaskCreatedStringArrayAttrI is the InAttr-side view of the stringArray section. P-variants only — every method returns void so no F-bounded `[Self]` parameter is needed.
type TaskCreatedStringArrayAttrsReadI ¶
type TaskCreatedStringArrayAttrsReadI interface {
GetAttrValueSingleOrDefault(entityIdx raruntime.EntityIdx, attrIdx raruntime.AttributeIdx) string
GetNumberOfAttributes(entityIdx raruntime.EntityIdx) int64
}
TaskCreatedStringArrayAttrsReadI is the Attributes-side view of the stringArray section.
type TaskCreatedStringArrayMembsReadI ¶
type TaskCreatedStringArrayMembsReadI interface {
GetMembValueLowCardRef(entityIdx raruntime.EntityIdx, attrIdx raruntime.AttributeIdx) iter.Seq[uint64]
}
TaskCreatedStringArrayMembsReadI is the Memberships-side view of the stringArray section.
type TaskCreatedStringArraySecI ¶
type TaskCreatedStringArraySecI[Attr any, Ent any] interface { BeginAttributeSingle(value string) Attr EndSection() Ent }
TaskCreatedStringArraySecI is the Section-side view: opens an attribute and closes the section. Attr and Ent are bound at the call site by inference.
type TaskCreatedSymbolAttrI ¶
type TaskCreatedSymbolAttrI interface {
dmlruntime.InAttributeMembershipLowCardRefPI
EndAttributeP()
}
TaskCreatedSymbolAttrI is the InAttr-side view of the symbol section. P-variants only — every method returns void so no F-bounded `[Self]` parameter is needed.
type TaskCreatedSymbolAttrsReadI ¶
type TaskCreatedSymbolAttrsReadI interface {
GetAttrValueValue(entityIdx raruntime.EntityIdx, attrIdx raruntime.AttributeIdx) string
GetNumberOfAttributes(entityIdx raruntime.EntityIdx) int64
}
TaskCreatedSymbolAttrsReadI is the Attributes-side view of the symbol section.
type TaskCreatedSymbolMembsReadI ¶
type TaskCreatedSymbolMembsReadI interface {
GetMembValueLowCardRef(entityIdx raruntime.EntityIdx, attrIdx raruntime.AttributeIdx) iter.Seq[uint64]
}
TaskCreatedSymbolMembsReadI is the Memberships-side view of the symbol section.
type TaskCreatedSymbolSecI ¶
type TaskCreatedSymbolSecI[Attr any, Ent any] interface { BeginAttribute(value string) Attr EndSection() Ent }
TaskCreatedSymbolSecI is the Section-side view: opens an attribute and closes the section. Attr and Ent are bound at the call site by inference.
type TaskCreatedTextArrayAttrI ¶
type TaskCreatedTextArrayAttrI interface {
dmlruntime.InAttributeMembershipLowCardRefPI
EndAttributeP()
}
TaskCreatedTextArrayAttrI is the InAttr-side view of the textArray section. P-variants only — every method returns void so no F-bounded `[Self]` parameter is needed.
type TaskCreatedTextArrayAttrsReadI ¶
type TaskCreatedTextArrayAttrsReadI interface {
GetAttrValueSingleOrDefault(entityIdx raruntime.EntityIdx, attrIdx raruntime.AttributeIdx) string
GetNumberOfAttributes(entityIdx raruntime.EntityIdx) int64
}
TaskCreatedTextArrayAttrsReadI is the Attributes-side view of the textArray section.
type TaskCreatedTextArrayMembsReadI ¶
type TaskCreatedTextArrayMembsReadI interface {
GetMembValueLowCardRef(entityIdx raruntime.EntityIdx, attrIdx raruntime.AttributeIdx) iter.Seq[uint64]
}
TaskCreatedTextArrayMembsReadI is the Memberships-side view of the textArray section.
type TaskCreatedTextArraySecI ¶
type TaskCreatedTextArraySecI[Attr any, Ent any] interface { BeginAttributeSingle(value string) Attr EndSection() Ent }
TaskCreatedTextArraySecI is the Section-side view: opens an attribute and closes the section. Attr and Ent are bound at the call site by inference.
type TaskCreatedU64ArrayAttrI ¶
type TaskCreatedU64ArrayAttrI interface {
dmlruntime.InAttributeMembershipLowCardRefPI
EndAttributeP()
}
TaskCreatedU64ArrayAttrI is the InAttr-side view of the u64Array section. P-variants only — every method returns void so no F-bounded `[Self]` parameter is needed.
type TaskCreatedU64ArrayAttrsReadI ¶
type TaskCreatedU64ArrayAttrsReadI interface {
GetAttrValueSingleOrDefault(entityIdx raruntime.EntityIdx, attrIdx raruntime.AttributeIdx) uint64
GetNumberOfAttributes(entityIdx raruntime.EntityIdx) int64
}
TaskCreatedU64ArrayAttrsReadI is the Attributes-side view of the u64Array section.
type TaskCreatedU64ArrayMembsReadI ¶
type TaskCreatedU64ArrayMembsReadI interface {
GetMembValueLowCardRef(entityIdx raruntime.EntityIdx, attrIdx raruntime.AttributeIdx) iter.Seq[uint64]
}
TaskCreatedU64ArrayMembsReadI is the Memberships-side view of the u64Array section.
type TaskCreatedU64ArraySecI ¶
type TaskCreatedU64ArraySecI[Attr any, Ent any] interface { BeginAttributeSingle(value uint64) Attr EndSection() Ent }
TaskCreatedU64ArraySecI is the Section-side view: opens an attribute and closes the section. Attr and Ent are bound at the call site by inference.