From 911bea77466363a8bfcc01b1ebc689089d810efe Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Wed, 15 Mar 2017 15:07:16 +0100 Subject: core.moduleapi: Factor out code for getting a scalar config option --- core/moduleapi.lua | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) (limited to 'core/moduleapi.lua') diff --git a/core/moduleapi.lua b/core/moduleapi.lua index 34214f26..7d954c1f 100644 --- a/core/moduleapi.lua +++ b/core/moduleapi.lua @@ -213,7 +213,7 @@ function api:get_option(name, default_value) return value; end -function api:get_option_string(name, default_value) +function api:get_option_scalar(name, default_value) local value = self:get_option(name, default_value); if type(value) == "table" then if #value > 1 then @@ -221,6 +221,11 @@ function api:get_option_string(name, default_value) end value = value[1]; end + return value; +end + +function api:get_option_string(name, default_value) + local value = self:get_option_scalar(name, default_value); if value == nil then return nil; end @@ -228,13 +233,7 @@ function api:get_option_string(name, default_value) end function api:get_option_number(name, ...) - local value = self:get_option(name, ...); - if type(value) == "table" then - if #value > 1 then - self:log("error", "Config option '%s' does not take a list, using just the first item", name); - end - value = value[1]; - end + local value = self:get_option_scalar(name, ...); local ret = tonumber(value); if value ~= nil and ret == nil then self:log("error", "Config option '%s' not understood, expecting a number", name); @@ -243,13 +242,7 @@ function api:get_option_number(name, ...) end function api:get_option_boolean(name, ...) - local value = self:get_option(name, ...); - if type(value) == "table" then - if #value > 1 then - self:log("error", "Config option '%s' does not take a list, using just the first item", name); - end - value = value[1]; - end + local value = self:get_option_scalar(name, ...); if value == nil then return nil; end -- cgit v1.2.3