class YARD::Parser::Ruby::MethodCallNode

def block

def block
  last.type == :do_block || last.type == :brace_block ? last : nil
end

def block_param; parameters.last end

def block_param; parameters.last end

def call?; true end

def call?; true end

def call_has_paren?

def call_has_paren?
  [:fcall, :call].include?(type)
end

def index_adjust

def index_adjust
  [:call, :command_call].include?(type) ? 2 : 0
end

def method_name(name_only = false)

def method_name(name_only = false)
  name = self[index_adjust]
  if name == :call
    nil
  elsif name_only && Array === name
    name.jump(:ident).first.to_sym
  else
    name
  end
end

def namespace; first if index_adjust > 0 end

def namespace; first if index_adjust > 0 end

def parameters(include_block_param = true)

def parameters(include_block_param = true)
  return [] if type == :vcall
  params = self[1 + index_adjust]
  return [] unless params
  params = call_has_paren? ? params.first : params
  return [] unless params
  include_block_param ? params : params[0...-1]
end