forked from cppstat/cppstat
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfeatures.schema.yaml
More file actions
86 lines (86 loc) · 2.55 KB
/
features.schema.yaml
File metadata and controls
86 lines (86 loc) · 2.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
---
$schema: "http://json-schema.org/draft-07/schema#"
title: Feature List Schema
type: object
required:
- features
properties:
features:
type: array
items:
$ref: "#/definitions/feature"
definitions:
feature:
type: object
required:
- desc
additionalProperties: false
properties:
desc:
type: string
description: "The title and / or description of the feature. Supports Markdown."
paper:
description: "One or multiple paper numbers that belong to the feature."
oneOf:
- type: string
- type: array
items:
type: string
summary:
type: string
description: "A brief description of the feature. Shown when hovering over the info button of a feature."
lib:
type: boolean
default: false
description: "If true, the feature counts as a standard library feature."
support:
type: array
description: "A list of toolchains that support the feature."
items:
type: string
pattern: "^(GCC|Clang|MSVC|Xcode|owcc|TinyCC)( ([0-9]+(\\.[0-9]+)*|\\?))?( \\((partial|hint)\\))?$"
hints:
type: array
description: "A list of hints targeting toolchains in the support list."
items:
type: object
required:
- target
- msg
additionalProperties: false
properties:
target:
type: string
description: "The toolchain that this hint targets."
msg:
type: string
description: "The reason for partial support, or the hint. Supports Markdown."
ftm:
type: array
description: "A list of feature-testing macros (FTM) for the feature."
items:
type: object
required:
- name
- value
additionalProperties: false
properties:
name:
type: string
description: "The name of the FTM."
value:
oneOf:
- type: string
- type: integer
description: "The value of the FTM."
desc:
type: string
description: "Optional description of what this FTM specifically refers to."
content:
type: string
description: "Information about the feature (e.g. a filename)."
keywords:
type: array
description: "A list of keywords to categorize the feature."
items:
type: string