Support captured CRDT changes in compound transaction contracts
This commit is contained in:
@@ -319,12 +319,12 @@ export class GenericSourceTypes {
|
||||
return { kind: "record", fields: Object.fromEntries(fields) };
|
||||
}
|
||||
const name = context.identifier()!.getText();
|
||||
if (name === "change" && context.typeArguments())
|
||||
throw new GenericTypeError(
|
||||
"unsupported-prepared-change",
|
||||
name,
|
||||
"Authored change<T> transport values require LF-19; native edit contracts are available separately",
|
||||
);
|
||||
if (name === "change" && context.typeArguments()) {
|
||||
const args = this.arguments(context.typeArguments());
|
||||
if (args.length !== 1 || args[0]!.kind !== "value")
|
||||
throw new GenericTypeError("invalid-change-type", name, "change<T> requires one materialized value type");
|
||||
return { kind: "change", value: args[0]!.type };
|
||||
}
|
||||
if (context.ATOM_REF()) return { kind: "object-ref", expectation: this.atom(name) };
|
||||
if (context.INTERFACE_REF())
|
||||
return {
|
||||
|
||||
Reference in New Issue
Block a user