blob: 83d94be897d22cc058bb646fecd9a473037b6b92 [file] [log] [blame]
[
{
"domain": "Test",
"types": [
{
"id": "TypeNeedingCast",
"type": "object",
"description": "A dummy type that requires runtime casts, and forces non-primitive referenced types to also emit runtime cast helpers.",
"properties": [
{ "name": "string", "type": "string", "description": "String member." },
{ "name": "number", "type": "integer", "description": "Number member." },
{ "name": "animals", "$ref": "CastedAnimals", "description": "Enum member." },
{ "name": "id", "$ref": "CastedObjectId", "description": "Aliased member." },
{ "name": "tree", "$ref": "RecursiveObject1", "description": "Recursive object member." }
]
},
{
"id": "CastedObjectId",
"type": "integer"
},
{
"id": "UncastedObjectId",
"type": "integer"
},
{
"id": "UncastedAnimals",
"type": "string",
"enum": ["Pigs", "Cows", "Cats", "Hens"]
},
{
"id": "CastedAnimals",
"type": "string",
"enum": ["Ducks", "Hens", "Crows", "Flamingos"]
},
{
"id": "RecursiveObject1",
"type": "object",
"properties": [
{ "name": "obj", "$ref": "RecursiveObject2", "optional": true }
]
},
{
"id": "RecursiveObject2",
"type": "object",
"properties": [
{ "name": "obj", "$ref": "RecursiveObject1", "optional": true }
]
}
]
}
]