Class: Sinclair::MethodDefinition::StringDefinition Private

Inherits:
MethodDefinition
  • Object
show all
Defined in:
lib/sinclair/method_definition/string_definition.rb

Overview

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Define an instance method from string

Author:

  • darthjee

Instance Method Summary collapse

Constructor Details

#initialize(name, code = nil, **options) ⇒ StringDefinition

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of StringDefinition.

Parameters:

  • name (String, Symbol) —

    name of the method

  • code (String) (defaults to: nil) —

    code to be evaluated as method

  • options (Hash) —

    Options of construction

Options Hash (**options):

  • cached (Boolean) —

    Flag telling to create a method with cache



17
18
19
20
# File 'lib/sinclair/method_definition/string_definition.rb', line 17

def initialize(name, code = nil, **options)
  @code = code
  super(name, **options)
end

Instance Method Details

#code_definition ⇒ String

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

string with the code to be defined

Returns:

  • (String)


28
29
30
31
32
33
34
# File 'lib/sinclair/method_definition/string_definition.rb', line 28

def code_definition
  <<-CODE
    def #{name}#{parameters_string}
      #{code_line}
    end
  CODE
end