_JSON {
my $self = shift;
my $json = {};
$json->{statement} = $self->statement if $self->statement;
$json->{signatories} = $self->signatories if @{$self->signatories};
$json
->{signature} = $self->signature if $self->signature;
return $json;
}
1;
=encoding utf-8
=head1 NAME
SBOM::CycloneDX::Declarations::Affirmation - Affirmation
=head1 SYNOPSIS
SBOM::
an
organization to assert validity of this document.
=item C<signature>, Enveloped signature in JSON Signature Format (JSF)
(L<https://cyberphone.github.io/doc/security/jsf.html>).
=item C<statemen
s => 'rw', isa => HashRef);
sub TO_JSON {
my $self = shift;
my $json = {};
$json->{'bom-ref'} = $self->bom_ref if $self->bom_ref;
$json->{propertyName} = $self->property_n
if $self->description;
$json->{data} = $self->data if @{$self->data};
$json->{created} = $self->created if $self->created;
$json->{expires} = $self->expi
if $self->expires;
$json->{author} = $self->author if $self->author;
$json->{reviewer} = $self->reviewer if $self->reviewer;
$json->{signature} = $self->sign
t::Zilla> plugin to include SourceHut L<https://sr.ht> meta
information in C<META.yml> and C<META.json>.
It automatically detects if the distribution directory is under C<git> version control and whe
t "ticket tracking service", aka C<todo>, which will be used as the C<bugtracker> value in C<META.json>. Use the special value C<auto> to calculate the bugtracker URL from the repo name. But as Source
('names', {name => 'Daniel'}, {returning => 'id'})->hash->{id};
# JSON roundtrip
say $db->query('SELECT ?::JSON AS foo', {json => {bar => 'baz'}})
->expand->hash->{foo}{bar};
# Select all
postgresql://postgres@/test') };
get '/' => sub ($c) {
my $db = $c->pg->db;
$c->render(json => $db->query('SELECT NOW() AS now')->hash);
};
app->start;
In this example application, we
state $time = MyApp::Model::Time->new(pg => shift->pg) };
get '/' => sub ($c) {
$c->render(json => $c->time->now);
};
app->start;
=head1 EXAMPLES
This distribution also contains two grea
a => Str);
sub TO_JSON {
my $self = shift;
my $json = {};
$json->{name} = $self->name if $self->name;
$json->{url} = $self->url if $self->url;
return $json;
}
1;
=encodin
lnerability::Source'], required => 1);
sub TO_JSON {
my $self = shift;
my $json = {id => $self->id, source => $self->source};
return $json;
}
1;
=encoding utf-8
=head1 NAME
SBOM::
sub TO_JSON {
my $self = shift;
my $json = {};
$json->{phase} = $self->phase if $self->phase;
$json->{name} = $self->name if $self->name;
$json->{desc
ription} = $self->description if $self->description;
return $json;
}
1;
=encoding utf-8
=head1 NAME
SBOM::CycloneDX::Metadata::Lifecycle - Lifecycle
=head1 SYNOPSIS
SBOM::CycloneDX::Me
TO_JSON {
my $self = shift;
my $json = {};
$json->{source} = $self->source if $self->source;
$json->{score} = $self->score if $self->score;
$json->
if $self->severity;
$json->{method} = $self->method if $self->method;
$json->{vector} = $self->vector if $self->vector;
$json->{justification} = $self->jus
tification if $self->justification;
return $json;
}
1;
=encoding utf-8
=head1 NAME
SBOM::CycloneDX::Vulnerability::Rating - Rating
=head1 SYNOPSIS
SBOM::CycloneDX::Vulnerability::Ratin
TO_JSON {
my $self = shift;
my $json = {};
$json->{name} = $self->name if $self->name;
$json->{algorithms} = $self->algorithms if @{$self->algorithms};
$json->{
identifiers} = $self->identifiers if @{$self->identifiers};
return $json;
}
1;
=encoding utf-8
=head1 NAME
SBOM::CycloneDX::CryptoProperties::CipherSuite - Object representing
a cipher suite
:CycloneDX::List->new });
sub TO_JSON {
my $self = shift;
my $json = {};
$json->{mechanism} = $self->mechanism if $self->mechanism;
$json->{algorithmRef} = $self->algorithm
_ref if @{$self->algorithm_ref};
return $json;
}
1;
=encoding utf-8
=head1 NAME
SBOM::CycloneDX::CryptoProperties::SecuredBy - The mechanism by which the cryptographic asset is secured by
=
O_JSON {
my $self = shift;
my $json = {};
$json->{'bom-ref'} = $self->bom_ref if $self->bom_ref;
$json->{identifier} = $self->identifier if $self->identifier;
$json-
f $self->title;
$json->{description} = $self->description if $self->description;
$json->{requirements} = $self->requirements if @{$self->requirements};
return $json;
}
1;
=encoding u
a => Str);
sub TO_JSON {
my $self = shift;
my $json = {};
$json->{name} = $self->name if $self->name;
$json->{url} = $self->url if $self->url;
return $json;
}
1;
=encodin
', isa => Str);
sub TO_JSON {
my $self = shift;
my $json = {};
$json->{subjectName} = $self->subject_name if $self->subject_name;
$json->{issuerName}
$json->{notValidBefore} = $self->not_valid_before if $self->not_valid_before;
$json->{notValidAfter} = $self->not_valid_after if $self->not_valid_after;
$json->
hm_ref if $self->signature_algorithm_ref;
$json->{subjectPublicKeyRef} = $self->subject_public_key_ref if $self->subject_public_key_ref;
$json->{certificateFormat} = $self->certificate_
isa => Num);
sub TO_JSON {
my $self = shift;
my $json = {};
$json->{primitive} = $self->primitive if $self->primitive;
$json->{parameterSetIdentif
ntifier if $self->parameter_set_identifier;
$json->{curve} = $self->curve if $self->curve;
$json->{executionEnvironment} = $self->execution_envi
if $self->execution_environment;
$json->{implementationPlatform} = $self->implementation_platform if $self->implementation_platform;
$json->{certificationLevel} = $self->certi
loneDX::List->new });
sub TO_JSON {
my $self = shift;
my $json = {};
$json->{type} = $self->type if $self->type;
$json->{version} = $sel
$json->{cipherSuites} = $self->cipher_suites if @{$self->cipher_suites};
$json->{ikev2TransformTypes} = $self->ikev2_transform_types if $self->ikev2_transform_types;
$json->{
cryptoRefArray} = $self->crypto_ref_array if @{$self->crypto_ref_array};
return $json;
}
1;
=encoding utf-8
=head1 NAME
SBOM::CycloneDX::CryptoProperties::ProtocolProperties - Prot
M::CycloneDX::Service']);
sub TO_JSON {
my $self = shift;
my $json = {};
$json->{organization} = $self->organization if $self->organization;
$json->{individual} = $self->individu
nt} = $self->component if $self->component;
$json->{service} = $self->service if $self->service;
my @check = keys %{$json};
if (scalar @check != 1) {
Carp::croak
on", "individual", "component" and "service" cannot be used at the same time';
}
return $json;
}
1;
=encoding utf-8
=head1 NAME
SBOM::CycloneDX::Annotation::Annotator - Annotator
=head1
>new });
sub TO_JSON {
my $self = shift;
my $json = {};
$json->{encr} = $self->encr if @{$self->encr};
$json->{prf} = $self->prf if @{$self->prf};
$json->{integ} = $self
f->integ};
$json->{ke} = $self->ke if @{$self->ke};
$json->{esn} = $self->esn if @{$self->esn};
$json->{auth} = $self->auth if @{$self->auth};
return $json;
}
1;
=encod
rking processes?
=item Make usable from a Language Server?
=item Colour terminal output?
=item JSON output?
=back
=head1 KNOWN ISSUES/GOTCHAS
Checking/running programs via STDIN, -e and -E swit
O_JSON {
my $self = shift;
my $json = {};
$json->{type} = $self->type if $self->type;
$json->{id} = $self->id if $self->id;
$json->
$self->state;
$json->{algorithmRef} = $self->algorithm_ref if $self->algorithm_ref;
$json->{creationDate} = $self->creation_date if $self->creation_date;
$json->{activationDate} =
tivation_date;
$json->{updateDate} = $self->update_date if $self->update_date;
$json->{expirationDate} = $self->expiration_date if $self->expiration_date;
$json->{value} =
']]);
sub TO_JSON {
my $self = shift;
my $json = {};
$json->{type} = $self->type if $self->type;
$json->{diff} = $self->diff if $self->diff;
$json->{resolves} =
$self->resolves if @{$self->resolves};
return $json;
}
1;
=encoding utf-8
=head1 NAME
SBOM::CycloneDX::Component::Patch - Patch
=head1 SYNOPSIS
SBOM::CycloneDX::Component::Patch->new(