27 if( j.contains( key ) )
30 j.at( key ).get_to( tmp );
61 nlohmann::to_json( j[
"platforms"], v.
platforms );
73 j.at(
"version" ).get_to( v.
version );
74 j.at(
"status" ).get_to( v.
status );
85 if( j.contains(
"platforms" ) )
86 j.at(
"platforms" ).get_to( v.
platforms );
88 if( j.contains(
"keep_on_update" ) )
108 if( p.
tags.size() > 0 )
118 j.at(
"name" ).get_to( p.
name );
122 j.at(
"type" ).get_to( p.
type );
123 j.at(
"author" ).get_to( p.
author );
124 j.at(
"license" ).get_to( p.
license );
125 j.at(
"resources" ).get_to( p.
resources );
126 j.at(
"versions" ).get_to( p.
versions );
134 if( j.contains(
"tags" ) )
135 j.at(
"tags" ).get_to( p.
tags );
137 if( j.contains(
"keep_on_update" ) )
153 j.at(
"url" ).get_to( r.
url );
177 j.at(
"name" ).get_to( r.
name );
178 j.at(
"packages" ).get_to( r.
packages );
199 j.at(
"package" ).get_to( e.
package );
206 if( j.contains(
"pinned" ) )
207 j.at(
"pinned" ).get_to( e.
pinned );
void to_json(json &j, const PACKAGE_VERSION &v)
void to_optional(const json &j, const char *key, std::optional< T > &dest)
void from_json(const json &j, PACKAGE_VERSION &v)
< Package version metadata Package metadata
std::optional< uint64_t > download_size
std::optional< uint64_t > install_size
PCM_PACKAGE_VERSION_STATUS status
std::optional< wxString > kicad_version_max
std::optional< wxString > download_url
std::optional< PCM_PACKAGE_RUNTIME > runtime
std::optional< wxString > download_sha256
std::optional< int > version_epoch
std::vector< std::string > platforms
std::vector< std::string > keep_on_update
uint64_t install_timestamp
Repository reference to a resource.
wxString description_full
std::vector< std::string > tags
std::optional< PCM_CONTACT > maintainer
std::vector< PACKAGE_VERSION > versions
std::optional< PCM_PLUGIN_CATEGORY > category
std::vector< std::string > keep_on_update
Package installation entry.
PCM_RESOURCE_REFERENCE packages
std::optional< PCM_CONTACT > maintainer
std::optional< PCM_RESOURCE_REFERENCE > manifests
std::optional< PCM_RESOURCE_REFERENCE > resources
std::optional< wxString > sha256
uint64_t update_timestamp