Class: Inch::Language::Elixir::Provider::Reader::Object::FunctionObject
- Inherits:
-
Base
- Object
- Base
- Inch::Language::Elixir::Provider::Reader::Object::FunctionObject
- Defined in:
- lib/inch/language/elixir/provider/reader/object/function_object.rb
Overview
Proxy class for functions
Defined Under Namespace
Classes: FunctionSignature
Instance Attribute Summary
Attributes inherited from Base
Instance Method Summary collapse
Methods inherited from Base
#aliased_object_fullname, #aliases_fullnames, #api_tag?, #attributes, #bang_name?, #constant?, #constructor?, #depth, #docstring, #filename, #files, #getter?, #has_children?, #has_code_example?, #has_doc?, #has_multiple_code_examples?, #has_unconsidered_tags?, #in_root?, #initialize, #namespace?, #nodoc?, #original_docstring, #overridden?, #overridden_method_fullname, #parent_fullname, #private?, #protected?, #public?, #questioning_name?, #return_described?, #return_mentioned?, #return_typed?, #setter?, #source, #tagged_as_internal_api?, #tagged_as_private?, #unconsidered_tag_count, #undocumented?, #visibility
Constructor Details
This class inherits a constructor from Inch::Language::Elixir::Provider::Reader::Object::Base
Instance Method Details
#fullname ⇒ Object
15 16 17 |
# File 'lib/inch/language/elixir/provider/reader/object/function_object.rb', line 15 def fullname @hash['module_id'] + '.' + @hash['id'] end |
#method? ⇒ Boolean
19 20 21 |
# File 'lib/inch/language/elixir/provider/reader/object/function_object.rb', line 19 def method? true end |
#name ⇒ Object
11 12 13 |
# File 'lib/inch/language/elixir/provider/reader/object/function_object.rb', line 11 def name @hash['id'] end |
#parameters ⇒ Object
23 24 25 26 27 28 |
# File 'lib/inch/language/elixir/provider/reader/object/function_object.rb', line 23 def parameters names = FunctionSignature.new(@hash['signature']).parameter_names names.map do |name| FunctionParameterObject.new(self, name) end end |