package Text::Tradition::Collation::Reading;
use Moose;
-use overload '""' => \&_stringify;
+use overload '""' => \&_stringify, 'fallback' => 1;
use Text::Tradition::Collation;
=head1 NAME
is => 'ro',
isa => 'Str',
required => 1,
+ writer => 'alter_text',
);
has 'is_start' => (
# If one of our special booleans is set, we change the text and the
# ID to match.
- if( exists $args->{'is_lacuna'} ) {
+ if( exists $args->{'is_lacuna'} && !exists $args->{'text'} ) {
$args->{'text'} = sprintf( "#LACUNA_%s#", $args->{'id'} );
} elsif( exists $args->{'is_start'} ) {
$args->{'id'} = '#START#'; # Change the ID to ensure we have only one
return $self->collation->related_readings( $self, @_ );
}
+sub set_identical {
+ my( $self, $other ) = @_;
+ return $self->collation->add_relationship( $self, $other,
+ { 'type' => 'transposition' } );
+}
+
sub _stringify {
my $self = shift;
return $self->id;