module LightIO::Library::Base

Public Class Methods

new(*args) click to toggle source
# File lib/lightio/library/base.rb, line 107
def initialize(*args)
  obj = self.class.send(:call_method_from_ancestors, :mock_klass).send(:origin_new, *args)
  @obj = obj
  call_lightio_initialize
  @obj
end

Private Class Methods

full_const_set(base, mod_name, const) click to toggle source
# File lib/lightio/library/base.rb, line 134
def full_const_set(base, mod_name, const)
  mods = mod_name.split("::")
  mod_name = mods.pop
  full_mod_name = base.to_s
  mods.each do |mod|
    parent_mod = Object.const_get(full_mod_name)
    parent_mod.const_get(mod) && next rescue nil
    parent_mod.const_set(mod, Module.new)
    full_mod_name = "#{full_mod_name}::#{mod}"
  end
  Object.const_get(full_mod_name).const_set(mod_name, const)
end
included(base) click to toggle source
# File lib/lightio/library/base.rb, line 124
def included(base)
  base.send :extend, MockMethods
  base.send :extend, ClassMethods
end
nameless_classes() click to toggle source
# File lib/lightio/library/base.rb, line 130
def nameless_classes
  @nick_classes ||= {}
end

Private Instance Methods

call_lightio_initialize() click to toggle source
# File lib/lightio/library/base.rb, line 115
def call_lightio_initialize
  __send__(:lightio_initialize) if respond_to?(:lightio_initialize, true)
end
light_io_raw_obj() click to toggle source
# File lib/lightio/library/base.rb, line 119
def light_io_raw_obj
  @obj
end