1324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruverpackage ANTLR::Runtime::MissingTokenException;
2324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
3324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruveruse Moose;
4324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
5324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruveruse overload
6324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    '""' => \&to_string;
7324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
8324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruverextends 'ANTLR::Runtime::MismatchedTokenException';
9324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
10324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruverhas 'inserted' => (
11324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    is  => 'ro',
12324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    isa => 'Any',
13324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver);
14324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
15324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruversub get_missing_type {
16324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    my ($self) = @_;
17324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    return $self->expecting;
18324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver}
19324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
20324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruversub to_string {
21324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    my ($self) = @_;
22324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
23324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    if (defined (my $inserted = $self->inserted) && defined (my $token = $self->token)) {
24324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver        return "MissingTokenException(inserted $inserted at " . $token->get_text() . ")";
25324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    }
26324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    if (defined $self->token) {
27324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver        return "MissingTokenException(at " . $self->token->get_text() . ")";
28324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    }
29324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
30324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver    return "MissingTokenException";
31324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver}
32324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver
33324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruverno Moose;
34324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver__PACKAGE__->meta->make_immutable();
35324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver1;
36324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver__END__
37