package {$package_name}; use Moose; use MooseX::ExtraArgs; use Moose::Util::TypeConstraints qw(enum union); if (!defined Moose::Util::TypeConstraints::find_type_constraint('PDL')) \{ Moose::Util::TypeConstraints::type('PDL'); \} {$used_modules} # VERSION # ABSTRACT: This attribute is one of the possible options for the trace {$trace_name}. =encoding utf-8 =head1 SYNOPSIS # EXAMPLE: examples/traces/{$trace_name}.pl =head1 DESCRIPTION This attribute is part of the possible options for the trace {$trace_name}. This file has been autogenerated from the official plotly.js source. If you like Plotly, please support them: L Open source announcement: L Full reference: L =head1 DISCLAIMER This is an unofficial Plotly Perl module. Currently I'm not affiliated in any way with Plotly. But I think plotly.js is a great library and I want to use it with perl. =head1 METHODS =cut =head2 TO_JSON Serialize the trace to JSON. This method should be called only by L serializer. =cut sub TO_JSON \{ my $self = shift; my $extra_args = $self->extra_args // \{\}; my $meta = $self->meta; my %hash = %$self; for my $name (sort keys %hash) \{ my $attr = $meta->get_attribute($name); if (defined $attr) \{ my $value = $hash\{$name\}; my $type = $attr->type_constraint; if ($type && $type->equals('Bool')) \{ $hash\{$name\} = $value ? \1 : \ 0; \} \} \} %hash = (%hash, %$extra_args); delete $hash\{'extra_args'\}; if ($self->can('type') && (!defined $hash\{'type'\})) \{ $hash\{type\} = $self->type(); \} return \%hash; \} =head1 ATTRIBUTES =over =cut