fbdoc
1.0.1
FreeBASIC documentation tool
fbdoc_emit_lfn.bas
Go to the documentation of this file.
1
13
14
#INCLUDE ONCE
"
fbdoc_options.bi
"
15
16
17
24
SUB
lfn_CTOR
CDECL
(
BYVAL
O
AS
Options
PTR
)
25
WITH
*O
26
IF 0
=
LEN
(.LfnPnN)
THEN
.LfnPnN = .OutPath & LFN_FILE
27
MSG_LINE(.LfnPnN)
28
.Ocha =
FREEFILE
29
IF OPEN
(.LfnPnN
FOR OUTPUT
AS
#.Ocha)
THEN
30
.Ocha = 0
31
MSG_CONT(
"error (couldn't write)"
)
32
ELSE
33
PRINT
#.Ocha,
"+++ List of Function Names +++"
34
MSG_CONT(
"opened"
)
35
END IF
36
END WITH
37
END SUB
38
39
40
SUB
lfn_DTOR
CDECL
(
BYVAL
O
AS
Options
PTR
)
41
CLOSE
O->Ocha
42
MSG_CONT(O->LfnPnN &
"written"
)
43
END SUB
44
45
46
54
SUB
lfn_decl_
CDECL
(
BYVAL
P
AS
Parser
PTR
)
55
WITH
*P
'&Parser* P;
56
SELECT CASE
AS CONST
*.StaTok
57
CASE
.TOK_SUB, .TOK_FUNC, .TOK_PROP
58
CASE ELSE
:
EXIT SUB
59
END SELECT
:
IF 0
= .NamTok
ORELSE 0
= .FunTok
THEN EXIT SUB
60
.PtrCount = 0
61
cNam
(P)
62
Code(LFN_SEP)
63
END WITH
64
END SUB
65
66
67
74
SUB
lfn_class_
CDECL
(
BYVAL
P
AS
Parser
PTR
)
75
WITH
*P
'&Parser* P;
76
IF
OPT->AllCallees
THEN
.
parseBlockTyUn
(@
lfn_decl_
())
77
END WITH
78
END SUB
79
80
81
89
SUB
lfn_func_
CDECL
(
BYVAL
P
AS
Parser
PTR
)
' !!! ToDo member functions
90
WITH
*P
'&Parser* P;
91
SELECT CASE
AS CONST
*.StaTok
92
CASE
.TOK_SUB, .TOK_FUNC, .TOK_PROP
93
CASE
.TOK_CTOR : Code(.
SubStr
(.NamTok) &
"."
)
94
CASE ELSE
:
EXIT SUB
95
END SELECT
96
.PtrCount = 0
97
cNam
(P)
98
Code(LFN_SEP)
99
END WITH
100
END SUB
101
102
103
112
SUB
lfn_include
CDECL
(
BYVAL
P
AS
Parser
PTR
)
113
WITH
*P
'&Parser* P;
114
IF
OPT->InTree
THEN
.
Include
(
TRIM
(.
SubStr
(.NamTok),
""""
))
115
END WITH
116
END SUB
117
118
119
120
127
SUB
init_lfn
(
BYVAL
Emi
AS
EmitterIF
PTR
)
128
WITH
*Emi
129
.CTOR_ = @
lfn_CTOR
()
130
.DTOR_ = @
lfn_DTOR
()
131
132
.Clas_ = @
lfn_class_
()
133
.Unio_ = @
lfn_class_
()
134
.Func_ = @
lfn_func_
()
135
.Decl_ = @
lfn_decl_
()
136
.Incl_ = @
lfn_include
()
137
END WITH
138
END SUB
139
140
src
bas
fbdoc_emit_lfn.bas
Generated on Sat May 13 2023 14:56:40 for fbdoc by
1.9.1