/// <summary> /// function_call : /// CALL? routine_name function_arguments? keep_clause? /// ; /// </summary> /// <param name="context"></param> /// <returns></returns> public override object VisitFunction_call([NotNull] PlSqlParser.Function_callContext context) { var names = ObjectName.ProcedureName(context.routine_name().GetCleanedTexts()); var method = new OCallMethodReference() { Name = names }; var function_arguments = context.function_arguments(); if (function_arguments != null) { method.Arguments = VisitFunction_arguments(function_arguments) as List <OMethodArgument>; } var keep_clause = context.keep_clause(); if (keep_clause != null) { Stop(); var tt = VisitKeep_clause(keep_clause); //method.Keep = tt; } //EvaluateGrants(method); return(method); }
public static ParsedLink ReadElement(PlSqlParser.Function_callContext context) { var item = context.children[0] as ParserRuleContext; var elementName = item.GetText(); var element = new ParsedLink(elementName); element.SetPosition(item); return(element); }
public override ParsedProcedure VisitFunction_call([NotNull] PlSqlParser.Function_callContext context) { _Result.AddElement(Helper.ReadElement(context)); return(base.VisitFunction_call(context)); }