summaryrefslogtreecommitdiff
path: root/docs_oos/entity.schema.json
diff options
context:
space:
mode:
Diffstat (limited to 'docs_oos/entity.schema.json')
-rw-r--r--docs_oos/entity.schema.json39
1 files changed, 27 insertions, 12 deletions
diff --git a/docs_oos/entity.schema.json b/docs_oos/entity.schema.json
index 73011a7..de85b95 100644
--- a/docs_oos/entity.schema.json
+++ b/docs_oos/entity.schema.json
@@ -16,7 +16,7 @@
"description": "Stable identifier. Becomes the rst file name, the label and the :ref: target, so it replaces the doxygen refid. Convention: namespace and name joined by a dash, with a slug for a specialization, e.g. saw-data_server and saw-data_server-loopback."
},
"kind": {
- "enum": ["class", "struct", "alias", "function", "variable", "enum", "concept", "namespace"]
+ "enum": ["class", "struct", "alias", "function", "variable", "enum", "concept", "namespace", "macro"]
},
"name": {
"type": "string",
@@ -40,11 +40,25 @@
"detailed_description": {
"$ref": "#/$defs/paragraphs"
},
+ "type": {
+ "$ref": "#/$defs/type_tuple",
+ "description": "Only for an alias, variable or function entity: the aliased type, the variable type, or the return type. A class has no type of its own."
+ },
+ "parameters": {
+ "type": "array",
+ "description": "Only for a function entity.",
+ "items": {"$ref": "#/$defs/parameter"}
+ },
"templates": {
"type": "array",
"description": "Template parameters. A partial specialization lists the parameters it introduces, not the ones it binds.",
"items": {"$ref": "#/$defs/template_parameter"}
},
+ "bases": {
+ "type": "array",
+ "description": "Base classes, for the few places which use inheritance. Entries are type tuples, so a base which is itself documented links.",
+ "items": {"$ref": "#/$defs/type_tuple"}
+ },
"is_special": {
"type": "boolean",
"default": false,
@@ -141,6 +155,17 @@
]
}
},
+ "parameter": {
+ "type": "object",
+ "required": ["name", "type"],
+ "additionalProperties": false,
+ "properties": {
+ "name": {"type": "string"},
+ "type": {"$ref": "#/$defs/type_tuple"},
+ "default": {"type": "string"},
+ "brief_description": {"type": "string"}
+ }
+ },
"template_parameter": {
"type": "object",
"required": ["name", "kind"],
@@ -224,17 +249,7 @@
},
"parameters": {
"type": "array",
- "items": {
- "type": "object",
- "required": ["name", "type"],
- "additionalProperties": false,
- "properties": {
- "name": {"type": "string"},
- "type": {"$ref": "#/$defs/type_tuple"},
- "default": {"type": "string"},
- "brief_description": {"type": "string"}
- }
- }
+ "items": {"$ref": "#/$defs/parameter"}
},
"visibility": {"enum": ["public", "protected", "private"], "default": "public"},
"static": {"type": "boolean", "default": false},