1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
/*
Copyright 1990-2008 Light Infocon Tecnologia S/A
Este arquivo é parte do programa LightBase - Banco de Dados Textual Documental
O LightBase é um software livre; você pode redistribui-lo e/ou modifica-lo dentro
dos termos da Licença Pública Geral GNU como publicada pela Fundação do Software
Livre (FSF); na versão 2 da Licença.
Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA
GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou APLICAÇÃO
EM PARTICULAR. Veja a Licença Pública Geral GNU para maiores detalhes.
Você deve ter recebido uma cópia da Licença Pública Geral GNU versao 2, sob o
título "LICENCA.txt", junto com este programa, se não, escreva para a Fundação do
Software Livre(FSF) Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
//
// extern "C" hALExpander newALExpander( char *wild_spec,
// int traverse_flag,
// ALCase name_case )
//
// ARGUMENTS:
//
// wild_spec : A sequence of wild card file specifications separated
// by spaces or semicolons.
//
// traverse_flag : set this guy if you want the wild card expansion
// to traverse all subdirectories.
//
// name_case : How the names will be returned, AL_UPPER, AL_MIXED,
// or AL_LOWER.
//
//
// RETURNS
//
// Returns a handle for (pointer to) a newly constructed
// ALWildCardExpander object.
//
// DESCRIPTION
//
// This ctor is used to create a new ALWildCardExpander object from
// C or VB. It operates identically to the wild card expander
// constructors defined in WILDCARD.CPP.
//
// You don't get to see much of the wild card expander code in this
// module, since this is just a translation layer. Look at WILDCARD.CPP
// for lots of neat stuff.
//
// This function passes the arguments it receives to the constructor
// with no changes. It then casts the return value to the appropriate
// handle type, and returns it to the calling procedure.
//
// REVISION HISTORY
//
// May 25, 1994 1.0A : First release
//
extern "C" hALExpander AL_FUNCTION
// C TRANSLATION FUNCTION
//
// extern "C" char * ALExpanderGetNextFile( hALExpander this_object )
//
// VB TRANSLATION FUNCTION
//
// extern "C" long ALExpanderGetNextFileVB( hALExpander this_object )
//
// ARGUMENTS:
//
// this_object : A handle for (pointer to) an ALWildCardExpander
// object.
//
// RETURNS
//
// A string containing the next expanded wild card generated by
// the wild card engine. Note that under C, you will get a pointer
// to a string that is residing inside the ALWildCardExpander
// object, which you are free to copy or duplicate. The VB translation
// function actually creates a new string using the ALCreateVBString
// function.
//
// DESCRIPTION
//
// This function provides a C or VB translation layer that allows you to
// access the ALWildCardExpander::GetNextFile() function. The function
// operators by first checking the single handle argument for correct
// type (in debug mode). It then casts the handle to an object pointer,
// and uses that to invoke the member function. Under C, the return from
// the member function is passed directly back to the calling routine.
// Under VB, the return is first converted to a Visual Basic string, then
// returned.
//
// To see the details of ALWildCardExpander::GetNextFile(), look at
// WILDCARD.CPP.
//
// REVISION HISTORY
//
// May 25, 1994 1.0A : First release
//
// August 10, 1994 1.0B : Combined a bunch of #ifdefs into a single test
// against AL_VB
//
// The C translation layer.
//
extern "C" char * AL_FUNCTION
//
// VB translation layer.
//
extern "C" long AL_FUNCTION
//
// extern "C" void deleteALExpander( hALExpander this_object )
//
// ARGUMENTS:
//
// this_object : A handle for (pointer to) an ALWildCardExpander
// object.
//
// RETURNS
//
// Nothing, this is a destructor.
//
// DESCRIPTION
//
// This function provides a C or VB translation layer that allows you to
// access the ALWildCardExpander destructor. The function works
// by first checking the single handle argument for correct
// type (in debug mode). It then casts the handle to an object pointer,
// and uses that to invoke the destructor.
//
// To see the details of the ALWildCardExpander destructor, look at
// WILDCARD.CPP.
//
// REVISION HISTORY
//
// May 25, 1994 1.0A : First release
//
extern "C" void AL_FUNCTION