override public void OnCallableDefinition(CallableDefinition node)
        {
            if (null == node.ReturnType)
            {
                node.ReturnType = CodeBuilder.CreateTypeReference(TypeSystemServices.VoidType);
            }

            CompleteOmittedParameterType(node);

            ClassDefinition cd = TypeSystemServices.CreateCallableDefinition(node.Name);

            cd.LexicalInfo = node.LexicalInfo;
            cd.Members.Add(CreateInvokeMethod(node));
            cd.Members.Add(CreateBeginInvokeMethod(node));
            cd.Members.Add(CreateEndInvokeMethod(node));
            ReplaceCurrentNode(cd);
        }