Lines Matching full:self

41 	self.thr = "SY_THR_STATIC"
42 for k, _ in pairs(self.type) do
44 self.thr = "SY_THR_ABSENT"
52 self.cap = "0"
53 local stripped = util.stripAbiPrefix(self.name, self.prefix)
54 for k, _ in pairs(self.type) do
56 self.cap = "SYF_CAPENABLED"
75 if config.syscall_no_abi_change[self.name] then
76 self.changes_abi = false
78 self.noproto = not util.isEmpty(config.abi_flags) and
79 not self.changes_abi
81 for _, v in ipairs(self.args) do
83 if config.syscall_no_abi_change[self.name] then
84 print("WARNING: " .. self.name ..
88 self.changes_abi = true
94 if config.syscall_abi_change[self.name] then
95 self.changes_abi = true
97 if self.changes_abi then
98 self.noproto = false
105 if config.obsol[self.name] or (self:compatLevel() > 0 and
106 self:compatLevel() < tonumber(config.mincompat)) then
107 self.args = nil
108 self.type.OBSOL = true
110 self.changes_abi = false
112 if config.unimpl[self.name] then
113 self.type.UNIMPL = true
115 if self.noproto or self.type.SYSMUX then
116 self.type.NOPROTO = true
118 if self.type.NODEF then
119 self.audit = "AUE_NULL"
128 if self.changes_abi then
129 self.arg_prefix = config.abi_func_prefix
130 self.prefix = config.abi_func_prefix
140 return prev + 1 == self.num
145 local c = self:compatLevel()
146 if self.type.OBSOL then
149 if self.type.RESERVED then
152 if self.type.UNIMPL then
166 return self:compatPrefix() .. self.name
178 if self.type.UNIMPL or self.type.RESERVED then
180 elseif self.type.OBSOL then
182 elseif self.type.COMPAT then
185 for k, _ in pairs(self.type) do
197 if self.num == nil then
199 self.num = words[1]
200 self.audit = words[2]
201 self.type = util.setFromString(words[3], "[^|]+")
202 checkType(self.type)
203 self.name = words[4]
206 self.altname = words[5]
207 self.alttag = words[6]
208 self.rettype = words[7]
217 if self.name == "{" then
225 self.ret = ret:add()
227 if self.rettype == nil then
228 self.rettype = "int"
231 self.name = words[2]:match("([%w_]+)%(")
234 self.expect_rbrace = true
244 if not self.expect_rbrace then
246 self.expect_rbrace = true
253 arg:append(self.args)
257 self.changes_abi = self.changes_abi or arg:changesAbi()
265 if self.name == nil then
266 self.name = ""
270 self.alias = self.name
272 self:processChangesAbi() -- process changes to the ABI
273 self:processFlags() -- process any unprocessed flags
277 self.prefix = ""
278 self.arg_prefix = ""
279 self:processPrefix()
281 self:processCap() -- capability flag
282 self:processThr() -- thread flag
285 if self.alttag ~= nil then
286 self.arg_alias = self.alttag
287 elseif self.arg_alias == nil and self.name ~= nil then
290 self.arg_alias = self:compatPrefix() .. self.arg_prefix ..
291 self.name .. "_args"
292 elseif self.arg_alias ~= nil then
293 self.arg_alias = self.arg_prefix .. self.arg_alias
298 if self.name ~= nil and self.name ~= "" then
299 self.name = self.prefix .. self.name
302 self:processArgstrings()
303 self:processArgsize()
309 if self.type.SYSMUX then -- catch this first
310 self.args_size = "0"
311 elseif self.arg_alias ~= nil and
312 (#self.args ~= 0 or self.type.NODEF) then
313 self.args_size = "AS(" .. self.arg_alias .. ")"
315 self.args_size = "0"
326 for _, v in ipairs(self.args) do
338 self.argstr_type = type
339 self.argstr_type_var = type_var
340 self.argstr_var = var
348 if self:addDef(line) then
349 return self:isAdded(line)
351 if self:addFunc(line) then
354 if self:addArgs(line) then
357 return self:isAdded(line) -- Final validation, before adding.
368 if tonumber(self.num) == nil then
370 if not (self.type.RESERVED or self.type.UNIMPL) then
374 self:finalize()
377 elseif self.altname ~= nil and self.alttag ~= nil and
378 self.rettype ~= nil then
379 self:finalize()
383 elseif self.name ~= "{" and self.ret == nil then
384 self:finalize()
388 elseif self.expect_rbrace then
393 self:finalize()
401 return self:compatLevel() == native
404 -- Make a shallow copy of `self` and replace the system call number with num
411 for k, v in pairs(self) do
458 local s = tonumber(self.num)
461 s, e = string.match(self.num, "(%d+)%-(%d+)")
466 return self:shallowCopy(s - 1)
471 self.num = s -- Replace string with number, like the clones.
474 local deep_copy = deepCopy(self)
484 setmetatable(obj, self)
485 self.__index = self
487 self.expect_rbrace = false
488 self.changes_abi = false
489 self.args = {}
490 self.noproto = false