]]--
-module( "luci.uvl.datatypes", package.seeall )
+local fs = require "luci.fs"
+local ip = require "luci.ip"
+local math = require "math"
+local util = require "luci.util"
-require("luci.fs")
-require("luci.ip")
-require("luci.util")
+local tonumber = tonumber
+
+module "luci.uvl.datatypes"
function boolean( val )
function ip4addr( val )
if val then
- return luci.ip.IPv4(val) and true or false
+ return ip.IPv4(val) and true or false
end
return false
function ip6addr( val )
if val then
- return luci.ip.IPv6(val) and true or false
+ return ip.IPv6(val) and true or false
end
return false
"^[a-fA-F0-9]+:[a-fA-F0-9]+:[a-fA-F0-9]+:" ..
"[a-fA-F0-9]+:[a-fA-F0-9]+:[a-fA-F0-9]+$"
) then
- local parts = luci.util.split( val, ":" )
+ local parts = util.split( val, ":" )
for i = 1,6 do
parts[i] = tonumber( parts[i], 16 )
end
function directory( val, seen )
- local s = luci.fs.stat( val )
+ local s = fs.stat( val )
seen = seen or { }
if s and not seen[s.ino] then
if s.type == "directory" then
return true
elseif s.type == "link" then
- return directory( luci.fs.readlink(val), seen )
+ return directory( fs.readlink(val), seen )
end
end
end
function file( val, seen )
- local s = luci.fs.stat( val )
+ local s = fs.stat( val )
seen = seen or { }
if s and not seen[s.ino] then
if s.type == "regular" then
return true
elseif s.type == "link" then
- return file( luci.fs.readlink(val), seen )
+ return file( fs.readlink(val), seen )
end
end