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
179
180
181
|
local raylib = {
prefix = "RLAPI",
file = "raylib.h",
blacklist = {
InitWindow = "Handled internally",
WindowShouldClose = "Handled internally",
GetScreenWidth = "Replaced by GetScreenSize",
GetScreenHeight = "Replaced by GetScreenSize",
GetRenderWidth = "Replaced by GetRenderSize",
GetRenderHeight = "Replaced by GetRenderSize",
GetMonitorWidth = "Replaced by GetMonitorSize",
GetMonitorHeight = "Replaced by GetMonitorSize",
GetMonitorPhysicalWidth = "Replaced by GetMonitorPhysicalSize",
GetMonitorPhysicalHeight = "Replaced by GetMonitorPhysicalSize",
UnloadRandomSequence = "Handled internally",
MemAlloc = "Buffer should be used instead",
MemRealloc = "Buffer should be used instead",
MemFree = "Buffer should be used instead",
SetTraceLogCallback = "Handled internally",
SetLoadFileDataCallback = "Not seen necessary",
SetSaveFileDataCallback = "Not seen necessary",
SetLoadFileTextCallback = "Not seen necessary",
SetSaveFileTextCallback = "Not seen necessary",
UnloadFileData = "Handled internally",
UnloadFileText = "Handled internally",
UnloadDirectoryFiles = "Handled internally",
UnloadDroppedFiles = "Handled internally",
GetMouseX = "Replaced by GetMousePosition",
GetMouseY = "Replaced by GetMousePosition",
GetTouchX = "Replaced by GetTouchPosition",
GetTouchY = "Replaced by GetTouchPosition",
UpdateCamera = "Replaced by UpdateCamera3D",
UpdateCameraPro = "Replaced by UpdateCameraPro3D",
DrawPixelV = "Replaced by DrawPixel",
DrawLineV = "Replaced by DrawLine",
DrawLineEx = "Replaced by DrawLine",
DrawCircleV = "Replaced by DrawCircle",
DrawCircleLinesV = "Replaced by DrawCircleLines",
DrawRectangleV = "Replaced by DrawRectangle",
DrawRectangleRec = "Replaced by DrawRectangle",
UnloadImageColors = "Handled internally",
UnloadImagePalette = "Handled internally",
ImageDrawPixelV = "Replaced by ImageDrawPixel",
ImageDrawLineV = "Replaced by ImageDrawLine",
ImageDrawCircleV = "Replaced by ImageDrawCircle",
ImageDrawCircleLinesV = "Replaced by ImageDrawCircleLines",
ImageDrawRectangleV = "Replaced by ImageDrawRectangle",
ImageDrawRectangleRec = "Replaced by ImageDrawRectangle",
DrawTextureV = "Replaced by DrawTexture",
UnloadFontData = "Handled internally",
UnloadUTF8 = "Handled internally",
UnloadCodepoints = "Handled internally",
TextCopy = "Can be replaced by Lua equivalent",
TextIsEqual = "Can be replaced by Lua equivalent",
TextLength = "Can be replaced by Lua equivalent",
TextJoin = "Can be replaced by Lua equivalent",
TextAppend = "Can be replaced by Lua equivalent",
TextToUpper = "Can be replaced by Lua equivalent",
TextToLower = "Can be replaced by Lua equivalent",
TextToInteger = "Can be replaced by Lua equivalent",
DrawCubeV = "Replaced by DrawCube",
DrawCubeWiresV = "Replaced by DrawCubeWires",
UploadMesh = "Handled internally",
UpdateMeshBuffer = "Handled internally",
UnloadWaveSamples = "Handled internally",
},
info = {
GenMeshHemiSphere = "Will be added",
GenMeshCubicmap = "Will be added",
UpdateSound = "Will be added",
LoadWaveSamples = "Will be added",
}
}
local rlgl = {
prefix = "RLAPI",
file = "rlgl.h",
blacklist = {
rlVertex2i = "Most likely not needed",
rlglInit = "Handled internally",
rlglClose = "Handled internally",
rlLoadExtensions = "Handled internally",
rlLoadDrawCube = "Most likely not needed",
rlLoadDrawQuad = "Most likely not needed",
},
info = {
rlEnableStatePointer = "Available for GRAPHICS_API_OPENGL_11",
rlDisableStatePointer = "Available for GRAPHICS_API_OPENGL_11",
},
}
local raygui = {
prefix = "RAYGUIAPI",
file = "raygui.h",
blacklist = {
},
info = {
},
}
local raymath = {
prefix = "RMAPI",
file = "raymath.h",
blacklist = {
Vector3ToFloatV = "Can be replaced by Lua equivalent",
MatrixToFloatV = "Can be replaced by Lua equivalent",
},
info = {
Vector3Project = "Will be added",
Vector3Reject = "Will be added",
},
}
local easings = {
prefix = "EASEDEF",
file = "easings.h",
blacklist = {
EaseLinearNone = "Replaced by EaseLinear",
EaseLinearIn = "Replaced by EaseLinear",
EaseLinearOut = "Replaced by EaseLinear",
EaseLinearInOut = "Replaced by EaseLinear",
},
info = {
},
}
local filePrefix = "../include/"
local headers = {
raylib,
rlgl,
raygui,
raymath,
easings,
}
if RL.arg[4] == "--help" then
print( "You can get blacklisted functions with argument '--blacklist'. Give additional argument to find specific function." )
return
end
for _, header in ipairs( headers ) do
if RL.arg[4] == "--blacklist" then
if RL.arg[5] == nil then
print( "\nFunctions blacklisted from '"..header.file.."':\n" )
for func, info in pairs( header.blacklist ) do
print( func.."\t\""..info.."\"" )
end
else
for func, info in pairs( header.blacklist ) do
if func:lower() == RL.arg[5]:lower() then
print( "\nFunction '"..func.."' blacklisted from '"..header.file.."'\t\""..info.."\"\n" )
end
end
end
else
local file = io.open( filePrefix..header.file, "r" )
if file ~= nil then
local line = ""
print( "\nFunctions not implemented from '"..header.file.."':\n" )
repeat
line = file:read( "*l" )
if line ~= nil and line:sub( 1, #header.prefix ) == header.prefix then
local splits = RL.TextSplit( line:sub( 1, RL.TextFindIndex( line, "(" ) ), " " )
local func = splits[ #splits ]
func = func:gsub( "*", "" )
if RL[ func ] == nil and not header.blacklist[ func ] then
local output = func
if header.info[ func ] ~= nil then
output = output.."\t\""..header.info[ func ].."\""
end
print( output )
end
end
until line == nil
end
end
end
|