Module: Bgem::Output::Ext::RB

Includes:
StandardHooks
Included in:
Class, Module
Defined in:
lib/bgem.rb

Defined Under Namespace

Classes: Class, Module

Class Method Summary collapse

Instance Method Summary collapse

Methods included from StandardHooks

#concatenate, #post, #pre

Class Method Details

.new(dir:, source:, chain:) ⇒ Object



71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# File 'lib/bgem.rb', line 71

def self.new dir:, source:, chain:
  unless chain.size == 2
    fail "#{chain}' size should be 2"
  end

  name, type = chain
  constant = type.capitalize

  if self.const_defined? constant
    type = self.const_get constant
  else
    fail "Don't know what to do with '#{type}'. #{self}::#{constant} is not defined."
  end

  type.new dir: dir, source: source, name: name
end

Instance Method Details

#initialize(dir:, source:, name:) ⇒ Object



88
89
90
91
# File 'lib/bgem.rb', line 88

def initialize dir:, source:, name:
  @dir, @source, @name = dir, source, name
  setup
end

#to_sObject



93
94
95
# File 'lib/bgem.rb', line 93

def to_s
  "#{head}#{source}end"
end