2 # Copyright 1999, 2000, 2001 Patrik Stridvall
4 # This library is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU Lesser General Public
6 # License as published by the Free Software Foundation; either
7 # version 2.1 of the License, or (at your option) any later version.
9 # This library is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 # Lesser General Public License for more details.
14 # You should have received a copy of the GNU Lesser General Public
15 # License along with this library; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25 my $class = ref($proto) || $proto;
27 bless ($self, $class);
34 my $file = \
${$self->{FILE
}};
38 if(defined($_)) { $$file = $_; }
45 my $begin_line = \
${$self->{BEGIN_LINE
}};
49 if(defined($_)) { $$begin_line = $_; }
54 sub begin_column
($$) {
56 my $begin_column = \
${$self->{BEGIN_COLUMN
}};
60 if(defined($_)) { $$begin_column = $_; }
62 return $$begin_column;
67 my $end_line = \
${$self->{END_LINE
}};
71 if(defined($_)) { $$end_line = $_; }
78 my $end_column = \
${$self->{END_COLUMN
}};
82 if(defined($_)) { $$end_column = $_; }
89 my $linkage = \
${$self->{LINKAGE
}};
93 if(defined($_)) { $$linkage = $_; }
100 my $return_type = \
${$self->{RETURN_TYPE
}};
104 if(defined($_)) { $$return_type = $_; }
106 return $$return_type;
109 sub calling_convention
($$) {
111 my $calling_convention = \
${$self->{CALLING_CONVENTION
}};
115 if(defined($_)) { $$calling_convention = $_; }
117 return $$calling_convention;
122 my $name = \
${$self->{NAME
}};
126 if(defined($_)) { $$name = $_; }
131 sub argument_types
($$) {
133 my $argument_types = \
${$self->{ARGUMENT_TYPES
}};
137 if(defined($_)) { $$argument_types = $_; }
139 return $$argument_types;
142 sub argument_names
($$) {
144 my $argument_names = \
${$self->{ARGUMENT_NAMES
}};
148 if(defined($_)) { $$argument_names = $_; }
150 return $$argument_names;
153 sub statements_line
($$) {
155 my $statements_line = \
${$self->{STATEMENTS_LINE
}};
159 if(defined($_)) { $$statements_line = $_; }
161 return $$statements_line;
164 sub statements_column
($$) {
166 my $statements_column = \
${$self->{STATEMENTS_COLUMN
}};
170 if(defined($_)) { $$statements_column = $_; }
172 return $$statements_column;
177 my $statements = \
${$self->{STATEMENTS
}};
181 if(defined($_)) { $$statements = $_; }