aboutsummaryrefslogtreecommitdiff
path: root/system/apis/flib.lua
diff options
context:
space:
mode:
authorAndrew Lee <alee14498@gmail.com>2019-03-05 19:26:59 -0500
committerAndrew Lee <alee14498@gmail.com>2019-03-05 19:26:59 -0500
commita18407bdb9c87ac970418cd625abe38f550ab45c (patch)
treecb40abeaef3b81dcd1cbf23304e80acf0445aed2 /system/apis/flib.lua
parent84a82712e4e3bd6826e572e63accc0800992eb4b (diff)
downloadbits-UI-a18407bdb9c87ac970418cd625abe38f550ab45c.tar.gz
bits-UI-a18407bdb9c87ac970418cd625abe38f550ab45c.tar.bz2
bits-UI-a18407bdb9c87ac970418cd625abe38f550ab45c.zip
Added a bunch of stuff
Diffstat (limited to 'system/apis/flib.lua')
-rw-r--r--system/apis/flib.lua124
1 files changed, 124 insertions, 0 deletions
diff --git a/system/apis/flib.lua b/system/apis/flib.lua
new file mode 100644
index 0000000..c3b7150
--- /dev/null
+++ b/system/apis/flib.lua
@@ -0,0 +1,124 @@
+--[[
+ fLib by NDFJay
+]]--
+function exists(path)
+ local file = assert(io.open(path, "r"))
+ if file ~= nil then
+ file:close()
+ return true
+ end
+
+ return false
+end
+
+function getTable(path)
+ if exists(path) then
+ local file = io.open(path, "r")
+ local lines = {}
+ local i = 1
+ local line = file:read("*l")
+ while line ~= nil do
+ lines[i] = line
+ line = file:read("*l")
+ i = i + 1
+ end
+ file:close()
+ return lines
+ end
+ return {}
+end
+
+function getLine(path, n)
+ if exists(path) then
+ local lines = getTable(path)
+ return lines[n]
+ end
+ return ""
+end
+
+function getText(path)
+ if exists(path) then
+ local file = assert(io.open(path, "r"))
+ return file:read("*a")
+ end
+ return ""
+end
+
+function fappend(path, text)
+ local file = assert(io.open(path, "a"))
+ file:write(text.."\n")
+ file:close()
+end
+
+function fwrite(path, text)
+ local file = assert(io.open(path, "w"))
+ file:write(text)
+ file:close()
+end
+
+function fwriteAtStart(path, text)
+ local _text = getText(path)
+ fwrite(path, text.."\n".._text)
+end
+
+function fwriteFromTable(path, t)
+ local text = ""
+ for _, line in pairs(t) do
+ text = text..line.."\n"
+ end
+ fwrite(path, text)
+end
+
+function fappendFromTable(path, t)
+ local text = ""
+ for _, line in pairs(t) do
+ text = text..line.."\n"
+ end
+ fappend(path, text)
+end
+
+function fwriteAtStartFromTable(path, t)
+ local text = ""
+ for _, line in pairs(t) do
+ text = text..line.."\n"
+ end
+ fwriteAtStart(path, text)
+end
+
+function replaceLine(path, n, text)
+ local lines = getTable(path)
+ lines[n] = text
+ fwriteFromTable(path, lines)
+end
+
+function getName(path)
+ if exists(path) then
+ local lastSlashPos = 1
+ for i = 1, path:len() do
+ if path:sub(i, i) == "/" then
+ lastSlashPos = i
+ end
+ end
+
+ return path:sub(lastSlashPos + 1)
+ end
+ return ""
+end
+
+function getPath(path)
+ if exists(path) then
+ local lastSlashPos = 1
+ for i = 1, path:len() do
+ if path:sub(i, i) == "/" then
+ lastSlashPos = i
+ end
+ end
+
+ return path:sub(1, lastSlashPos)
+ end
+ return ""
+end
+
+function fremove(path)
+ os.remove(path)
+end \ No newline at end of file