Syntax
getsignalarguments(signal: RBXScriptSignal): {string}Arguments
| Name | Type | Description |
|---|---|---|
signal | RBXScriptSignal | Signal whose event descriptor signature should be inspected. Non-RBXScriptSignal object raises a type error. |
Returns
| Name | Type | Description |
|---|---|---|
arguments | {string} | Array table of argument type name strings. A fallback table containing "Variant" is returned when the signature data cannot be read or no argument entries are produced. |
Description
Returns an array table of type names read from an RBXScriptSignal event descriptor signature. The first argument must be object whose Luau type name is RBXScriptSignal. The function reads the signal's event descriptor, walks the signature slots with the Real's argument stride, reads each argument type reference, and pushes the resolved type name string for each slot. It does not return captured runtime argument values. If the signature cannot be read or no entries are pushed, the returned table contains one fallback entry: "Variant".
Call it with 1 parameter(s): signal. The argument table explains which values are required and which ones only refine the behavior.
It returns arguments ({string}). Use the returns table to separate successful values from nil results and recoverable errors.
Example
Inspect an RBXScriptSignal signature and print the argument type names Real can read.
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local remote = ReplicatedStorage:FindFirstChild("RemoteEvent")
if remote then
for _, typeName in ipairs(getsignalarguments(remote.OnClientEvent)) do
print(typeName)
end
end