public IWorkshopTree Parse(ActionSet actionSet, MethodCall methodCall) { actionSet = actionSet .SetThisTypeLinker(methodCall.TypeArgs) .MergeTypeLinker(InstanceInfo); if (Provider.Block != null) { return(WorkshopFunctionBuilder.Call(actionSet, methodCall, new UserFunctionController(actionSet.ToWorkshop, this, methodCall.TypeArgs))); } else { return(MacroBuilder.CallMacroFunction(actionSet, this, methodCall)); } }