Class: Context

Inherits:
Object
  • Object
show all
Defined in:
lib/Context.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.define(*args, &block) ⇒ Object



2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/Context.rb', line 2

def self.define(*args,&block) name, base_class, default_interaction = *args
if default_interaction and (not base_class.instance_of?(Class)) then
 base_class = eval(base_class.to_s)
end
if base_class and ((not default_interaction) and (not base_class.instance_of?(Class))) then
 base_class, default_interaction = default_interaction, base_class
end
@with_contracts ||= nil
ctx = self.send(:create_context_factory, name, base_class, default_interaction, block)
if self.generate_dependency_graph then
 dependencies = {}
 ctx.dependencies = DependencyGraphModel.new(DependencyGraph.new(name, ctx.roles, ctx.interactions, dependencies).create!)
end
transformer = Transformer.new(name, ctx.roles, ctx.interactions, ctx.private_interactions, base_class, default_interaction)
ctx.generated_class = transformer.transform(generate_files_in, @with_contracts)
ctx
end

.generate_codeObject



23
# File 'lib/Context.rb', line 23

def self.generate_code() (@generate_code or ((not generate_dependency_graph) or generate_files_in)) end

.generate_code=(value) ⇒ Object



21
# File 'lib/Context.rb', line 21

def self.generate_code=(value) @generate_code = value end

.generate_dependency_graphObject



24
# File 'lib/Context.rb', line 24

def self.generate_dependency_graph() @generate_dependency_graph end

.generate_dependency_graph=(value) ⇒ Object



22
# File 'lib/Context.rb', line 22

def self.generate_dependency_graph=(value) @generate_dependency_graph = value end

.generate_files_inObject



19
# File 'lib/Context.rb', line 19

def self.generate_files_in() @generate_files_in end

.generate_files_in=(folder) ⇒ Object



20
# File 'lib/Context.rb', line 20

def self.generate_files_in=(folder) @generate_files_in = folder end

Instance Method Details

#dependenciesObject



25
# File 'lib/Context.rb', line 25

def dependencies() @dependencies end

#dependencies=(value) ⇒ Object



27
# File 'lib/Context.rb', line 27

def dependencies=(value) @dependencies = value end

#generated_classObject



26
# File 'lib/Context.rb', line 26

def generated_class() @generated_class end

#generated_class=(value) ⇒ Object



28
# File 'lib/Context.rb', line 28

def generated_class=(value) @generated_class = value end

#interactionsObject



30
# File 'lib/Context.rb', line 30

def interactions() @interactions end

#private_interactionsObject



31
# File 'lib/Context.rb', line 31

def private_interactions() @private_interactions end

#rolesObject



29
# File 'lib/Context.rb', line 29

def roles() @roles end