Pular para o conteúdo

getUserdataType

Compartilhada Utilidades

Diz que tipo de handle um userdata é.

string getUserdataType ( userdata valor )
NomeTipoPadrãoDescrição
valoruserdata—O valor a identificar.

Uma destas strings:

ResultadoPara
"element"Um elemento vivo, de qualquer tipo — pergunte a getElementType qual.
"resource-data"Um resource.
"xml-node"Um nó XML.
"lua-timer"Um timer de setTimer.
"userdata"Qualquer outro userdata, inclusive um elemento que já foi destruído.
"vector2", "vector3", "vector4", "matrix"Os valores Vector2/Vector3/Vector4 e Matrix embutidos. No MTAX eles são tabelas, não userdata, mas são reconhecidos mesmo assim.

Qualquer outra coisa — um número, uma string, uma tabela comum — registra Bad usage @ 'getUserdataType' [Bad Argument: Expected userdata, got <tipo>] e devolve false.

local function descrever(valor)
if type(valor) ~= "userdata" and type(valor) ~= "table" then return type(valor) end
local tipo = getUserdataType(valor)
if tipo == "element" then return getElementType(valor) end
return tipo
end
descrever(getThisResource()) -- "resource-data"
descrever(setTimer(function() end, 1000, 1)) -- "lua-timer"
descrever(Vector3(1, 2, 3)) -- "vector3"
  • pregFind — Diz se uma expressão regular casa com uma string.
  • pregMatch — Junta todas as ocorrências de uma expressão regular.
  • pregReplace — Substitui todas as ocorrências de uma expressão regular.