1package DNS::LDNS::RBTree;
2
3use 5.008008;
4use strict;
5use warnings;
6
7use DNS::LDNS;
8
9our $VERSION = '0.61';
10
11# Note: Since this class does not have a constructor, we can let its child
12# objects be owned by the parent. This reduces the recursion depth on
13# DESTROY.
14
15sub first {
16    my $self = shift;
17    return DNS::LDNS::GC::own($self->_first, $self);
18}
19
20sub last {
21    my $self = shift;
22    return DNS::LDNS::GC::own($self->_last, $self);
23}
24
25sub DESTROY {
26    DNS::LDNS::GC::free($_[0]);
27}
28
291;
30__END__
31
32=head1 NAME
33
34DNS::LDNS::RBTree - Tree of DNSSecName nodes
35
36=head1 SYNOPSIS
37
38  use DNS::LDNS ':all'
39
40  rbnode = rbtree->first
41  rbnode = rbtree->last
42
43=head1 SEE ALSO
44
45http://www.nlnetlabs.nl/projects/ldns
46
47=head1 AUTHOR
48
49Erik Pihl Ostlyngen, E<lt>erik.ostlyngen@uninett.noE<gt>
50
51=head1 COPYRIGHT AND LICENSE
52
53Copyright (C) 2013 by UNINETT Norid AS
54
55This library is free software; you can redistribute it and/or modify
56it under the same terms as Perl itself, either Perl version 5.14.2 or,
57at your option, any later version of Perl 5 you may have available.
58
59=cut
60