4using namespace llvm::json;
14 ObjectMapper O(Params, P);
17 && O.mapOptional(
"Name", R.
Name);
27 {
"Type", Params.
Type},
31 ObjectMapper O(Params, P);
36 && O.mapOptional(
"Example", R.
Example)
37 && O.mapOptional(
"Default", R.
Default)
38 && O.mapOptional(
"Type", R.
Type)
44 {
"Name", Params.
Name},
49 ObjectMapper O(Params, P);
52 && O.mapOptional(
"Name", R.
Name)
58 {
"Name", Params.
Name},
59 {
"PName", Params.
PName},
70 ObjectMapper O(Params, P);
72 && O.map(
"Name", R.
Name)
73 && O.map(
"PName", R.
PName)
84 {
"Type", Params.
Type},
91 ObjectMapper O(Params, P);
93 && O.map(
"Type", R.
Type)
94 && O.mapOptional(
"Location", R.
Location)
100 {
"Meta", Params.
Meta},
107 llvm::json::Path P) {
108 ObjectMapper O(Params, P);
110 && O.map(
"Meta", R.
Meta)
112 && O.mapOptional(
"ValueDesc", R.
ValueDesc)
120 llvm::json::Path P) {
121 ObjectMapper O(Params, P);
123 && O.map(
"Scope", R.
Scope)
124 && O.map(
"Prefix", R.
Prefix)
130 {
"arity", Params.
Arity},
132 {
"args", Params.
Args},
136 llvm::json::Path P) {
138 ObjectMapper O(Params, P);
140 && O.map(
"arity", R.
Arity)
141 && O.map(
"doc", R.
Doc)
142 && O.map(
"args", R.
Args);
Types used in nixpkgs provider.
bool fromJSON(const llvm::json::Value &Params, Configuration::Diagnostic &R, llvm::json::Path P)
llvm::json::Value toJSON(const PackageDescription &Params)
std::string Prefix
Search for packages prefixed with this "prefix".
std::optional< ValueDescription > ValueDesc
ValueMeta Meta
General value description.
PackageDescription PackageDesc
Package description of the attribute path, if available.
std::vector< lspserver::Location > Definitions
std::optional< std::string > Description
std::optional< std::string > Example
std::optional< OptionType > Type
std::vector< lspserver::Location > Declarations
std::optional< std::string > Default
std::optional< OptionDescription > Description
std::optional< std::string > Description
std::optional< std::string > Name
std::optional< std::string > Name
std::optional< std::string > Version
std::optional< std::string > PName
std::optional< std::string > Description
std::optional< std::string > LongDescription
std::optional< std::string > Position
std::optional< std::string > Homepage
Using nix's ":doc" method to retrieve value's additional information.
std::vector< std::string > Args