github.com/voedger/voedger@v0.0.0-20240520144910-273e84102129/pkg/appdef/impl_object.go (about) 1 /* 2 * Copyright (c) 2021-present Sigma-Soft, Ltd. 3 * @author: Nikolay Nikitin 4 */ 5 6 package appdef 7 8 // # Implements: 9 // - IObject 10 type object struct { 11 structure 12 } 13 14 func newObject(app *appDef, name QName) *object { 15 o := &object{} 16 o.structure = makeStructure(app, name, TypeKind_Object) 17 app.appendType(o) 18 return o 19 } 20 21 func (o *object) isObject() {} 22 23 // # Implements: 24 // - IObjectBuilder 25 type objectBuilder struct { 26 structureBuilder 27 *object 28 } 29 30 func newObjectBuilder(object *object) *objectBuilder { 31 return &objectBuilder{ 32 structureBuilder: makeStructureBuilder(&object.structure), 33 object: object, 34 } 35 }