public static ElementNode Form(PlSqlParser.General_elementContext context) { var id = Name.Object(context.objectName()); var arg = context.function_argument(); IEnumerable<FunctionArgument> argNodes = null; if (arg != null) { argNodes = arg.argument().Select(FunctionArgument.Form); } return new ElementNode { Id = id, Argument = argNodes != null ? argNodes.ToArray() : null }; }