Class: LogStash::Config::AST::MethodCall

Inherits:
Node
  • Object
show all
Defined in:
lib/logstash/config/config_ast.rb

Constant Summary

Constants included from LogStashCompilerLSCLGrammar::LogStash::Compiler::LSCL::AST::Helpers

LogStashCompilerLSCLGrammar::LogStash::Compiler::LSCL::AST::Helpers::AND_METHOD, LogStashCompilerLSCLGrammar::LogStash::Compiler::LSCL::AST::Helpers::BOOLEAN_DSL_METHOD_SIGNATURE, LogStashCompilerLSCLGrammar::LogStash::Compiler::LSCL::AST::Helpers::NAND_METHOD, LogStashCompilerLSCLGrammar::LogStash::Compiler::LSCL::AST::Helpers::OR_METHOD, LogStashCompilerLSCLGrammar::LogStash::Compiler::LSCL::AST::Helpers::XOR_METHOD

Instance Method Summary collapse

Methods inherited from Node

#text_value_for_comments

Methods included from LogStashCompilerLSCLGrammar::LogStash::Compiler::LSCL::AST::Helpers

#base_id, #base_protocol, #base_source_with_metadata, #base_source_with_metadata=, #compose, #compose_for, #jdsl, jdsl, #line_and_column, #source_meta

Instance Method Details

#compileObject



450
451
452
453
# File 'lib/logstash/config/config_ast.rb', line 450

def compile
  arguments = recursive_inject { |e| [String, Number, Selector, Array, MethodCall].any? { |c| e.is_a?(c) } }
  return "#{method.text_value}(" << arguments.collect(&:compile).join(", ") << ")"
end