Module: Stitcher::Require

Includes:
Register
Included in:
Stitcher
Defined in:
lib/stitcher/require.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Register

define_call_method, register, #stitcher_register

Class Method Details

.method_added(name) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/stitcher/require.rb', line 13

def self.method_added name
	return unless @stitcher_require_concept
	concept = @stitcher_require_concept
	@stitcher_require_concept = nil

	method = @stitcher_require_methods.find{ |it| it.name == name }
	if method && stitcher_method_table(name).empty?
		# Don't wrap method.
		stitcher_add name, nil, method
	end

	Register.register self, name, concept
end

Instance Method Details

#stitcher_require(concept) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/stitcher/require.rb', line 8

def stitcher_require concept
	@stitcher_require_concept = concept
	@stitcher_require_methods = instance_methods.map { |name| instance_method name }

	return if methods.include? :method_added
	def self.method_added name
		return unless @stitcher_require_concept
		concept = @stitcher_require_concept
		@stitcher_require_concept = nil

		method = @stitcher_require_methods.find{ |it| it.name == name }
		if method && stitcher_method_table(name).empty?
			# Don't wrap method.
			stitcher_add name, nil, method
		end

		Register.register self, name, concept
	end
end