added File:type() and File:typeOf()

This commit is contained in:
Grump
2020-06-12 13:12:46 +02:00
parent e71f08c1e3
commit c84a058772
3 changed files with 16 additions and 10 deletions

View File

@@ -41,17 +41,13 @@ function File:setBuffer(mode, size)
return false, "Invalid buffer mode " .. mode .. " (expected 'none', 'full', or 'line')"
end
if mode == 'line' or mode == 'full' then
size = math.max(2, size or 2) -- Windows requires buffer to be at least 2 bytes
else
if mode == 'none' then
size = math.max(0, size or 0)
end
if self._mode == 'c' then
self._bufferMode, self._bufferSize = mode, size
return true
else
size = math.max(2, size or 2) -- Windows requires buffer to be at least 2 bytes
end
local success = C.setvbuf(self._handle, nil, bufferMode, size) == 0
local success = self._mode == 'c' or C.setvbuf(self._handle, nil, bufferMode, size) == 0
if success then
self._bufferMode, self._bufferSize = mode, size
return true
@@ -75,7 +71,7 @@ function File:getSize()
else
self:seek(pos)
end
return size;
return size
end
function File:read(containerOrBytes, bytes)
@@ -181,6 +177,10 @@ function File:release()
self._handle = nil
end
function File:type() return 'File' end
function File:typeOf(t) return t == 'File' end
File.__index = File
-----------------------------------------------------------------------------