UNPKG

@awayfl/avm2

Version:

Virtual machine for executing AS3 code

14 lines (13 loc) 553 B
import { Errors } from '../errors'; import { AXSecurityDomain } from './AXSecurityDomain'; import { AXCallable } from './AXCallable'; export function validateCall(sec: AXSecurityDomain, fun: AXCallable, argc: number) { if (!fun || !fun.axApply) { sec.throwError('TypeError', Errors.CallOfNonFunctionError, fun && fun.methodInfo ? fun.methodInfo.name : 'value'); } if (fun.methodInfo && argc < fun.methodInfo.minArgs) { sec.throwError('ArgumentError', Errors.WrongArgumentCountError, fun.methodInfo.name, fun.methodInfo.minArgs, argc); } }