Class: Qsim::Subject

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

Direct Known Subclasses

ProgramSubject, RoutineSubject

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(subject, request) ⇒ Subject

Returns a new instance of Subject.



9
10
11
12
# File 'lib/subject/subject.rb', line 9

def initialize(subject, request)
  @subject = subject
  @request = request
end

Class Method Details

.from_test(test, request) ⇒ Object



3
4
5
6
7
# File 'lib/subject/subject.rb', line 3

def self.from_test(test, request)
  subject = test[:subject]
  clazz = subject ? RoutineSubject : ProgramSubject
  clazz.new(subject, request)
end

Instance Method Details

#compile_code(input_file_separator, initial_state_file) ⇒ Object



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

def compile_code(input_file_separator, initial_state_file)
  "    JMP main\n\n    \#{extra_code}\n\n    main:\n    \#{main_code}\n    \#{input_file_separator}\n    \#{initial_state_file}\n  QSIM\nend\n"