This file is indexed.

/usr/share/perl5/MouseX/NativeTraits/MethodProvider/Bool.pm is in libmousex-nativetraits-perl 1.07-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
package MouseX::NativeTraits::MethodProvider::Bool;
use Mouse;

extends qw(MouseX::NativeTraits::MethodProvider);

sub generate_set {
    my($self) = @_;
    my $writer = $self->writer;
    return sub {
        if(@_ != 1) {
            $self->argument_error('set', 1, 1, scalar @_);
        }
        $writer->( $_[0], 1 );
    };
}

sub generate_unset {
    my($self) = @_;
    my $writer = $self->writer;
    return sub {
        if(@_ != 1) {
            $self->argument_error('unset', 1, 1, scalar @_);
        }
        $writer->( $_[0], 0 );
    };
}

sub generate_toggle {
    my($self) = @_;
    my $reader     = $self->reader;
    my $writer     = $self->writer;

    return sub {
        if(@_ != 1) {
            $self->argument_error('toggle', 1, 1, scalar @_);
        }
        $writer->( $_[0], !$reader->( $_[0] ) );
    };
}

sub generate_not {
    my($self) = @_;
    my $reader = $self->reader;
    return sub {
        if(@_ != 1) {
            $self->argument_error('not', 1, 1, scalar @_);
        }
        !$reader->( $_[0] );
    };
}

no Mouse;
__PACKAGE__->meta->make_immutable();

__END__

=head1 NAME

MouseX::NativeTraits::MethodProvider::Bool - Provides methods for Bool

=head1 DESCRIPTION

This class provides method generators for the C<Bool> trait.
See L<Mouse::Meta::Attribute::Custom::Trait::Bool> for details.

=head1 METHOD GENERATORS

=over 4

=item generate_set

=item generate_unset

=item generate_toggle

=item generate_not

=back

=head1 SEE ALSO

L<MouseX::NativeTraits>

=cut