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: {$description} =encoding utf-8 =head1 SYNOPSIS # EXAMPLE: examples/traces/{$trace_name}.pl =head1 DESCRIPTION {$description} Screenshot of the above example: =begin HTML

Screenshot of the above example

=end HTML =begin markdown ![Screenshot of the above example](https://raw.githubusercontent.com/pablrod/p5-Chart-Plotly/master/examples/traces/{$trace_name}.png) =end markdown =begin HTML

=end HTML 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; \} \} \} my $plotly_meta = delete $hash\{'pmeta'\}; if (defined $plotly_meta) \{ $hash\{'meta'\} = $plotly_meta; \} %hash = (%hash, %$extra_args); delete $hash\{'extra_args'\}; if ($self->can('type') && (!defined $hash\{'type'\})) \{ $hash\{type\} = $self->type(); \} return \%hash; \} =head2 type Trace type. =cut sub type \{ my @components = split(/::/, __PACKAGE__); return lc($components[-1]); \} =head1 ATTRIBUTES =over =cut