public class JsonStructureType extends JsonSchemaType
FIELD_FILE_URL, FROM_SOURCE_METHOD| Constructor and Description |
|---|
JsonStructureType(JsonSchemaType parent,
manifold.api.fs.IFile source,
java.lang.String name,
TypeAttributes attr) |
| Modifier and Type | Method and Description |
|---|---|
void |
addChild(java.lang.String name,
IJsonParentType type) |
void |
addMember(java.lang.String name,
IJsonType type,
Token token) |
void |
addRequiredWithTokens(java.lang.Object withTokens)
Keeping tokens so we can verify named required property exists during resolve()
|
boolean |
addSourcePositionAnnotation(java.lang.StringBuilder sb,
int indent,
java.lang.String name) |
void |
addSuper(IJsonType superType) |
boolean |
equals(java.lang.Object o) |
boolean |
equalsStructurally(IJsonType o)
JSon Schema types normally compare by identity, however for
some use-cases we still need to compare them structurally e.g.,
for merging types.
|
IJsonType |
findChild(java.lang.String name) |
java.util.Map<java.lang.String,IJsonParentType> |
getInnerTypes() |
protected java.util.Map<java.lang.String,Token> |
getMemberLocations() |
java.util.Map<java.lang.String,IJsonType> |
getMembers() |
int |
hashCode() |
boolean |
isRequired(java.lang.String name) |
protected JsonEnumType |
makeEnumType(java.util.Collection<? extends IJsonType> types) |
IJsonType |
merge(IJsonType that) |
void |
render(AbstractJsonTypeManifold tm,
java.lang.StringBuilder sb,
int indent,
boolean mutable) |
protected void |
resolveRefsImpl() |
java.lang.String |
toString() |
addActualNameAnnotation, addActualNameAnnotation, addFromSourceMethod, addIssue, addRequestMethods, addSourcePositionAnnotation, addTypeReferenceAnnotation, copyWithAttributes, getActualFqn, getConstituentQn, getConstituentQn, getConstituentQnComponent, getDefinitions, getErrorHandler, getFile, getFqn, getFqn, getIdentifier, getIFile, getIssues, getLabel, getLocation, getModule, getName, getParent, getPropertyType, getPropertyType, getTm, getToken, getTypeAttributes, indent, isCollapsedUnionEnum, isParentRoot, isSchemaType, isSyntheticSchema, makeIdentifier, makeMemberIdentifier, makeTypeParameter, mergeInnerTypes, prepareToRender, removeGenerics, renderFileField, renderFileField, renderInner, resolveRefs, setDefinitions, setJsonSchema, setParent, setSyntheticSchema, setTm, setTokenpublic JsonStructureType(JsonSchemaType parent, manifold.api.fs.IFile source, java.lang.String name, TypeAttributes attr)
protected void resolveRefsImpl()
resolveRefsImpl in class JsonSchemaTypepublic void addSuper(IJsonType superType)
public void addChild(java.lang.String name,
IJsonParentType type)
public IJsonType findChild(java.lang.String name)
public java.util.Map<java.lang.String,IJsonType> getMembers()
protected java.util.Map<java.lang.String,Token> getMemberLocations()
public java.util.Map<java.lang.String,IJsonParentType> getInnerTypes()
public void render(AbstractJsonTypeManifold tm, java.lang.StringBuilder sb, int indent, boolean mutable)
protected JsonEnumType makeEnumType(java.util.Collection<? extends IJsonType> types)
public boolean addSourcePositionAnnotation(java.lang.StringBuilder sb,
int indent,
java.lang.String name)
public boolean equalsStructurally(IJsonType o)
IJsonTypepublic boolean isRequired(java.lang.String name)
public void addRequiredWithTokens(java.lang.Object withTokens)
public boolean equals(java.lang.Object o)
equals in class JsonSchemaTypepublic int hashCode()
hashCode in class JsonSchemaTypepublic java.lang.String toString()
toString in class java.lang.ObjectCopyright © 2021. All rights reserved.