blob: 78a7670f306d4e2f74bf573cdc45b3c5bb41b997 [file] [log] [blame]
Alexandre Julliard0799c1a2002-03-09 23:29:33 +00001#
2# Copyright 1999, 2000, 2001 Patrik Stridvall
3#
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.
8#
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.
13#
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
17#
18
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000019package function;
20
21use strict;
22
Francois Gougeta8b09d12004-10-26 00:12:21 +000023sub new($) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000024 my $proto = shift;
25 my $class = ref($proto) || $proto;
26 my $self = {};
27 bless ($self, $class);
28
29 return $self;
30}
31
Francois Gougeta8b09d12004-10-26 00:12:21 +000032sub file($$) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000033 my $self = shift;
34 my $file = \${$self->{FILE}};
35
36 local $_ = shift;
37
38 if(defined($_)) { $$file = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +000039
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000040 return $$file;
41}
42
Francois Gougeta8b09d12004-10-26 00:12:21 +000043sub debug_channels($$) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000044 my $self = shift;
45 my $debug_channels = \${$self->{DEBUG_CHANNELS}};
46
47 local $_ = shift;
48
49 if(defined($_)) { $$debug_channels = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +000050
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000051 return $$debug_channels;
52}
53
Francois Gougeta8b09d12004-10-26 00:12:21 +000054sub documentation_line($$) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000055 my $self = shift;
56 my $documentation_line = \${$self->{DOCUMENTATION_LINE}};
57
58 local $_ = shift;
59
60 if(defined($_)) { $$documentation_line = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +000061
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000062 return $$documentation_line;
63}
64
Francois Gougeta8b09d12004-10-26 00:12:21 +000065sub documentation($$) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000066 my $self = shift;
67 my $documentation = \${$self->{DOCUMENTATION}};
68
69 local $_ = shift;
70
71 if(defined($_)) { $$documentation = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +000072
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000073 return $$documentation;
74}
75
Francois Gougeta8b09d12004-10-26 00:12:21 +000076sub function_line($$) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000077 my $self = shift;
78 my $function_line = \${$self->{FUNCTION_LINE}};
79
80 local $_ = shift;
81
82 if(defined($_)) { $$function_line = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +000083
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000084 return $$function_line;
85}
86
Francois Gougeta8b09d12004-10-26 00:12:21 +000087sub linkage($$) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000088 my $self = shift;
89 my $linkage = \${$self->{LINKAGE}};
90
91 local $_ = shift;
92
93 if(defined($_)) { $$linkage = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +000094
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000095 return $$linkage;
96}
97
Francois Gougeta8b09d12004-10-26 00:12:21 +000098sub return_type($$) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +000099 my $self = shift;
100 my $return_type = \${$self->{RETURN_TYPE}};
101
102 local $_ = shift;
103
104 if(defined($_)) { $$return_type = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +0000105
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +0000106 return $$return_type;
107}
108
Francois Gougeta8b09d12004-10-26 00:12:21 +0000109sub calling_convention($$) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +0000110 my $self = shift;
111 my $calling_convention = \${$self->{CALLING_CONVENTION}};
112
113 local $_ = shift;
114
115 if(defined($_)) { $$calling_convention = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +0000116
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +0000117 return $$calling_convention;
118}
119
Francois Gougeta8b09d12004-10-26 00:12:21 +0000120sub internal_name($$) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +0000121 my $self = shift;
122 my $internal_name = \${$self->{INTERNAL_NAME}};
123
124 local $_ = shift;
125
126 if(defined($_)) { $$internal_name = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +0000127
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +0000128 return $$internal_name;
129}
130
Francois Gougeta8b09d12004-10-26 00:12:21 +0000131sub argument_types($$) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +0000132 my $self = shift;
133 my $argument_types = \${$self->{ARGUMENT_TYPES}};
134
135 local $_ = shift;
136
137 if(defined($_)) { $$argument_types = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +0000138
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +0000139 return $$argument_types;
140}
141
Francois Gougeta8b09d12004-10-26 00:12:21 +0000142sub argument_names($$) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +0000143 my $self = shift;
144 my $argument_names = \${$self->{ARGUMENT_NAMES}};
145
146 local $_ = shift;
147
148 if(defined($_)) { $$argument_names = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +0000149
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +0000150 return $$argument_names;
151}
152
Francois Gougeta8b09d12004-10-26 00:12:21 +0000153sub argument_documentations($$) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +0000154 my $self = shift;
155 my $argument_documentations = \${$self->{ARGUMENT_DOCUMENTATIONS}};
156
157 local $_ = shift;
158
159 if(defined($_)) { $$argument_documentations = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +0000160
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +0000161 return $$argument_documentations;
162}
163
Francois Gougeta8b09d12004-10-26 00:12:21 +0000164sub statements_line($$) {
Patrik Stridvall4b33b132001-08-09 21:35:38 +0000165 my $self = shift;
166 my $statements_line = \${$self->{STATEMENTS_LINE}};
167
168 local $_ = shift;
169
170 if(defined($_)) { $$statements_line = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +0000171
Patrik Stridvall4b33b132001-08-09 21:35:38 +0000172 return $$statements_line;
173}
174
Francois Gougeta8b09d12004-10-26 00:12:21 +0000175sub statements($$) {
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +0000176 my $self = shift;
177 my $statements = \${$self->{STATEMENTS}};
178
179 local $_ = shift;
180
181 if(defined($_)) { $$statements = $_; }
Alexandre Julliard7cae5582002-06-01 02:55:48 +0000182
Patrik Stridvallc3e8ac32001-07-11 17:27:45 +0000183 return $$statements;
184}
185
1861;