X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fluci.git;a=blobdiff_plain;f=libs%2Fcore%2Fluasrc%2Futil.lua;h=53e46a99dc85176b1461720d0446954ad1512e85;hp=ea1fccbc1cdce15a8f169ee6c60b3e63a12f683c;hb=a3cf596d37e4116a7068daaa724270a0898cb7da;hpb=cbed72fb47c8c0eda6322574c678389b795cd23c diff --git a/libs/core/luasrc/util.lua b/libs/core/luasrc/util.lua index ea1fccbc1..53e46a99d 100644 --- a/libs/core/luasrc/util.lua +++ b/libs/core/luasrc/util.lua @@ -31,6 +31,7 @@ local debug = require "debug" local ldebug = require "luci.debug" local string = require "string" local coroutine = require "coroutine" +local cutil = require "luci.cutil" local getmetatable, setmetatable = getmetatable, setmetatable local rawget, rawset, unpack = rawget, rawset, unpack @@ -44,6 +45,7 @@ module "luci.util" -- -- Pythonic string formatting extension -- +--[[ getmetatable("").__mod = function(a, b) if not b then return a @@ -53,6 +55,7 @@ getmetatable("").__mod = function(a, b) return a:format(b) end end +]]-- -- @@ -60,6 +63,7 @@ end -- -- Instantiates a class +--[[ local function _instantiate(class, ...) local inst = setmetatable({}, {__index = class}) @@ -69,6 +73,7 @@ local function _instantiate(class, ...) return inst end +]]-- --- Create a Class object (Python-style object model). -- The class object can be instantiated by calling itself. @@ -84,12 +89,15 @@ end -- @return A class object -- @see instanceof -- @see clone +--[[ function class(base) return setmetatable({}, { __call = _instantiate, __index = base }) end +]]-- +class = cutil.class --- Test whether the given object is an instance of the given class. -- @param object Object instance @@ -97,6 +105,7 @@ end -- @return Boolean indicating whether the object is an instance -- @see class -- @see clone +--[[ function instanceof(object, class) local meta = getmetatable(object) while meta and meta.__index do @@ -107,6 +116,8 @@ function instanceof(object, class) end return false end +]]-- +instanceof = cutil.instanceof -- @@ -193,6 +204,7 @@ end --- Create valid XML PCDATA from given string. -- @param value String value containing the data to escape -- @return String value containing the escaped data +--[[ function pcdata(value) return value and tostring(value):gsub("[&\"'<>]", { ["&"] = "&", @@ -202,6 +214,8 @@ function pcdata(value) [">"] = ">" }) end +]]-- +pcdata = cutil.pcdata --- Strip HTML tags from given string. -- @param value String containing the HTML text @@ -257,9 +271,12 @@ end --- Remove leading and trailing whitespace from given string value. -- @param str String value containing whitespace padded data -- @return String value with leading and trailing space removed +--[[ function trim(str) return (str:gsub("^%s*(.-)%s*$", "%1")) end +]]-- +trim = cutil.trim --- Count the occurences of given substring in given string. -- @param str String to search in