X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=lib%2FLaTeX%2FTikZ%2FSet%2FUnion.pm;h=af0051828891852fe6c91bd814b70cc22da3331e;hb=4f696c03a66ef6b52ee7b9b3c74a71d5abc64f7e;hp=2648d3d77223810556025bdb637b234fca8ff056;hpb=b8f42942311854cb0ef8a3e34c0145846639cd2e;p=perl%2Fmodules%2FLaTeX-TikZ.git diff --git a/lib/LaTeX/TikZ/Set/Union.pm b/lib/LaTeX/TikZ/Set/Union.pm index 2648d3d..af00518 100644 --- a/lib/LaTeX/TikZ/Set/Union.pm +++ b/lib/LaTeX/TikZ/Set/Union.pm @@ -9,28 +9,28 @@ LaTeX::TikZ::Set::Union - A set object representing a path formed by the reunion =head1 VERSION -Version 0.02 +Version 0.03 =cut -our $VERSION = '0.02'; +our $VERSION = '0.03'; use LaTeX::TikZ::Interface; use LaTeX::TikZ::Functor; use LaTeX::TikZ::Tools; -use Any::Moose; +use Mouse; =head1 RELATIONSHIPS -This class consumes the L and L roles, and as such implements the L and L methods. +This class consumes the L and L roles, and as such implements the L, L and L methods. =cut with qw< LaTeX::TikZ::Set::Path - LaTeX::TikZ::Set::Mutable + LaTeX::TikZ::Set::Container >; =head1 ATTRIBUTES @@ -78,10 +78,41 @@ sub path { join ' ', map $_->path(@_), $set->kids; } +=head2 C + +=cut + +sub begin { + my $set = shift; + + my @kids = $set->kids; + return undef unless @kids; + + $kids[0]->begin; +} + +=head2 C + +=cut + +sub end { + my $set = shift; + + my @kids = $set->kids; + return undef unless @kids; + + $kids[-1]->end; +} + LaTeX::TikZ::Interface->register( union => sub { shift; + __PACKAGE__->new(kids => \@_); + }, + path => sub { + shift; + __PACKAGE__->new(kids => \@_); }, ); @@ -97,7 +128,7 @@ __PACKAGE__->meta->make_immutable; =head1 SEE ALSO -L, L, L. +L, L, L. =head1 AUTHOR @@ -118,7 +149,7 @@ You can find documentation for this module with the perldoc command. =head1 COPYRIGHT & LICENSE -Copyright 2010 Vincent Pit, all rights reserved. +Copyright 2010,2011,2012,2013,2014,2015 Vincent Pit, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.