1
2
3
4
5
6 package dev.metaschema.databind.codegen.typeinfo;
7
8 import com.squareup.javapoet.AnnotationSpec;
9 import com.squareup.javapoet.FieldSpec;
10 import com.squareup.javapoet.TypeSpec;
11
12 import java.util.Set;
13
14 import dev.metaschema.core.model.IModelDefinition;
15 import dev.metaschema.core.model.IModelInstanceAbsolute;
16 import dev.metaschema.databind.codegen.typeinfo.def.IAssemblyDefinitionTypeInfo;
17 import edu.umd.cs.findbugs.annotations.NonNull;
18
19 public interface IModelInstanceTypeInfo extends IInstanceTypeInfo {
20
21 @Override
22 @NonNull
23 IAssemblyDefinitionTypeInfo getParentTypeInfo();
24
25 @Override
26 IModelInstanceAbsolute getInstance();
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 @NonNull
43 Set<IModelDefinition> buildBindingAnnotation(
44 @NonNull TypeSpec.Builder typeBuilder,
45 @NonNull FieldSpec.Builder fieldBuilder,
46 @NonNull AnnotationSpec.Builder annotation);
47 }