Sha256: aa76ef0e5668e2b77b6214f8ed68a012cb301eb4c84a62917e1b822c0ba68a28

Contents?: true

Size: 785 Bytes

Versions: 3

Compression:

Stored size: 785 Bytes

Contents

module Inch
  module Language
    module Elixir
      module Evaluation
        # Proxy class for functions
        class FunctionObject < Base
          protected

          def relevant_roles
            relevant_base_roles.merge(relevant_function_roles)
          end

          def relevant_function_roles
            {
              Role::Function::Getter => nil,
              Role::Function::Setter => nil,
              Role::Function::Overridden =>
                if object.overridden?
                  object.overridden_method.score
                else
                  nil
                end,
              Role::Function::WithBangName => nil,
              Role::Function::WithQuestioningName => nil
            }
          end
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
inch-0.5.0.rc8 lib/inch/language/elixir/evaluation/function_object.rb
inch-0.5.0.rc7 lib/inch/language/elixir/evaluation/function_object.rb
inch-0.5.0.rc6 lib/inch/language/elixir/evaluation/function_object.rb