kerberos: Add support for SECPKG_CRED_BOTH.
[wine.git] / tools / winapi / function.pm
blob2bc2c4ca7a3364a7dbf2d73cdfe91c5a76eb64ad
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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 package function;
21 use strict;
22 use warnings 'all';
24 sub new($) {
25 my $proto = shift;
26 my $class = ref($proto) || $proto;
27 my $self = {};
28 bless ($self, $class);
30 return $self;
33 sub file($$) {
34 my $self = shift;
35 my $file = \${$self->{FILE}};
37 local $_ = shift;
39 if(defined($_)) { $$file = $_; }
41 return $$file;
44 sub debug_channels($$) {
45 my $self = shift;
46 my $debug_channels = \${$self->{DEBUG_CHANNELS}};
48 local $_ = shift;
50 if(defined($_)) { $$debug_channels = $_; }
52 return $$debug_channels;
55 sub documentation_line($$) {
56 my $self = shift;
57 my $documentation_line = \${$self->{DOCUMENTATION_LINE}};
59 local $_ = shift;
61 if(defined($_)) { $$documentation_line = $_; }
63 return $$documentation_line;
66 sub documentation($$) {
67 my $self = shift;
68 my $documentation = \${$self->{DOCUMENTATION}};
70 local $_ = shift;
72 if(defined($_)) { $$documentation = $_; }
74 return $$documentation;
77 sub function_line($$) {
78 my $self = shift;
79 my $function_line = \${$self->{FUNCTION_LINE}};
81 local $_ = shift;
83 if(defined($_)) { $$function_line = $_; }
85 return $$function_line;
88 sub linkage($$) {
89 my $self = shift;
90 my $linkage = \${$self->{LINKAGE}};
92 local $_ = shift;
94 if(defined($_)) { $$linkage = $_; }
96 return $$linkage;
99 sub return_type($$) {
100 my $self = shift;
101 my $return_type = \${$self->{RETURN_TYPE}};
103 local $_ = shift;
105 if(defined($_)) { $$return_type = $_; }
107 return $$return_type;
110 sub calling_convention($$) {
111 my $self = shift;
112 my $calling_convention = \${$self->{CALLING_CONVENTION}};
114 local $_ = shift;
116 if(defined($_)) { $$calling_convention = $_; }
118 return $$calling_convention;
121 sub internal_name($$) {
122 my $self = shift;
123 my $internal_name = \${$self->{INTERNAL_NAME}};
125 local $_ = shift;
127 if(defined($_)) { $$internal_name = $_; }
129 return $$internal_name;
132 sub argument_types($$) {
133 my $self = shift;
134 my $argument_types = \${$self->{ARGUMENT_TYPES}};
136 local $_ = shift;
138 if(defined($_)) { $$argument_types = $_; }
140 return $$argument_types;
143 sub argument_names($$) {
144 my $self = shift;
145 my $argument_names = \${$self->{ARGUMENT_NAMES}};
147 local $_ = shift;
149 if(defined($_)) { $$argument_names = $_; }
151 return $$argument_names;
154 sub argument_documentations($$) {
155 my $self = shift;
156 my $argument_documentations = \${$self->{ARGUMENT_DOCUMENTATIONS}};
158 local $_ = shift;
160 if(defined($_)) { $$argument_documentations = $_; }
162 return $$argument_documentations;
165 sub statements_line($$) {
166 my $self = shift;
167 my $statements_line = \${$self->{STATEMENTS_LINE}};
169 local $_ = shift;
171 if(defined($_)) { $$statements_line = $_; }
173 return $$statements_line;
176 sub statements($$) {
177 my $self = shift;
178 my $statements = \${$self->{STATEMENTS}};
180 local $_ = shift;
182 if(defined($_)) { $$statements = $_; }
184 return $$statements;