WoW:USERAPI allAreType

From AddOn Studio
Revision as of 11:22, 22 June 2009 by WoWWiki>Condo2k4 (:)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
This page documents a <i>user-defined function</i> that you can copy and paste into your addon. Replace PREFIX with your addon or lib prefix to avoid conflicts between different versions of these functions.

← User defined functions

This function is designed to make long If statements quicker and easier. Allows you to check lots of values at once for the same type

<PREFIX>_allAreType(type, param [,param [, ...]])

Note:

If just the type parameter is given then the function returns true, as no parameters have faile the check (See example 'c' below).

Function Parameters

Arguments

type
String - A string that represents the desired type of the values. See type() for further help on this value.
param
any - A list of values to check for the same, consistent type.

Returns

result
Boolean - true if all of the params have the desired type, false if atleast one fails.

Example

local a = <PREFIX>_allAreType("string","Hello",DEFAULT_CHAT_FRAME:GetName());
local b = <PREFIX>_allAreType("number", 65, tonumber("two") );
local c = <PREFIX>_allAreType("fuction");

local d = <PREFIX>_allAreType("table",{},{5,3,"Hello"}, "Bob");

Result

a = true
b = true
c = true

d = false

Code

function <PREFIX>_allAreType(typeStr,...)
  for i=1, select('#',...), 1 do
    value = select(i,...);
    if(type(value)~=typeStr) then
      return false;
    end;
  end;
  return true;
end