Use this schema to validate Clang .apinotes
files.
This JSON schema was developed using
- LLVM project source APINotesYAMLCompiler.cpp
- API Notes Documentation
The following rules were extracted from the CPP source:
- Required properties (such as
Name
) - Enums for definitions of properties such
SwiftWrapperKind
(none
,struct
orenum
) - Mutual exclusion such as for
Tags
where you must useEnumKind
orEnumExtensibility
/FlagEnum
Certain IDEs (IntelliJ) will report schema violations on the fly and will provide auto-completion of schema properties.