The Features schema describes how to define dependencies in the architecture. To understand how a Features schema is used please see the Features userguide.
Properties | Type | Description |
---|---|---|
_meta | Meta |
See
Meta
for more information.
|
_type |
|
|
constraints | Traits.HasConstraints |
Globally defined constraints.
See
definitions.constraints in
Traits.HasConstraints
for more information.
Examples
|
parameters | Parameterset |
List of parameters used to facilitate Architecture configurability.
See
Parameterset
for more information.
Examples
|
|
||
|
{
"$schema": "http://json-schema.org/draft-04/schema#",
"info": [
[
"The $(Features) schema describes how to define dependencies in the architecture.",
"To understand how a $(Features) schema is used please see [the Features userguide](./userguide/features.html)."
]
],
"properties": {
"_meta": {
"$ref": "Meta.json"
},
"_type": {
"enum": [
"Features"
]
},
"parameters": {
"info": [
"List of parameters used to facilitate Architecture configurability."
],
"$ref": "Parameterset.json",
"examples": [
[
{
"_type": "Parameters.Boolean",
"name": "v8Ap1"
},
{
"_type": "Parameters.Boolean",
"name": "v8Ap2"
},
{
"_type": "Parameters.Boolean",
"name": "FEAT_A",
"constraints": [
{
"_type": "AST.BinaryOp",
"left": {
"_type": "AST.Identifier",
"value": "FEAT_A"
},
"op": "-->",
"right": {
"_type": "AST.Identifier",
"value": "v8Ap2"
}
},
{
"_type": "AST.BinaryOp",
"left": {
"_type": "AST.Identifier",
"value": "FEAT_A"
},
"op": "<->",
"right": {
"_type": "AST.BinaryOp",
"left": {
"_type": "Types.Field",
"value": {
"state": "AArch64",
"name": "IDREG",
"field": "A"
}
},
"op": "==",
"right": {
"_type": "Values.Value",
"value": "'0001'"
}
}
}
]
}
]
]
},
"constraints": {
"$ref": "Traits/HasConstraints.json#/definitions/constraints",
"info": [
"Globally defined constraints."
],
"examples": [
[
{
"_type": "AST.BinaryOp",
"left": {
"_type": "AST.Identifier",
"value": "FEAT_A"
},
"op": "-->",
"right": {
"_type": "AST.Identifier",
"value": "v8Ap2"
}
},
{
"_type": "AST.BinaryOp",
"left": {
"_type": "AST.Identifier",
"value": "FEAT_A"
},
"op": "<->",
"right": {
"_type": "AST.BinaryOp",
"left": {
"_type": "Types.Field",
"value": {
"state": "AArch64",
"name": "IDREG",
"field": "A"
}
},
"op": "==",
"right": {
"_type": "Values.Value",
"value": "'0001'"
}
}
}
]
]
}
},
"title": "Features",
"type": "object",
"additionalProperties": false
}