class Origen::Generator
Public Instance Methods
compile_file_or_directory(file, options)
click to toggle source
# File lib/origen/generator.rb, line 68 def compile_file_or_directory(file, options) Job.new(file, { compile: true, default_dir: "#{Origen.root}/templates" }.merge(options)).run end
compiler()
click to toggle source
# File lib/origen/generator.rb, line 76 def compiler @compiler ||= Compiler.new end
create_iterator()
click to toggle source
# File lib/origen/generator.rb, line 84 def create_iterator iterator = PatternIterator.new Origen.after_app_loaded do |app| app.pattern_iterators << iterator end iterator end
flow()
click to toggle source
# File lib/origen/generator.rb, line 23 def flow @flow ||= Flow.new end
generate_pattern(file, options)
click to toggle source
# File lib/origen/generator.rb, line 35 def generate_pattern(file, options) if options[:sequence] options[:patterns] = file file = options[:sequence] end Job.new(file, options).run end
generate_program(file, options)
click to toggle source
# File lib/origen/generator.rb, line 43 def generate_program(file, options) Origen.file_handler.resolve_files(file, ignore_with_prefix: '_', default_dir: "#{Origen.root}/program") do |path| Origen.file_handler.current_file = path j = Job.new(path, options) j.pattern = path j.run end Origen.interface.write_files(options) unless options[:quiet] || Origen.tester.is_a?(OrigenTesters::Doc) if options[:referenced_pattern_list] file = "#{Origen.root}/list/#{options[:referenced_pattern_list]}" else file = Origen.config.referenced_pattern_list end puts "Referenced pattern list written to: #{Pathname.new(file).relative_path_from(Pathname.pwd)}" dir = Pathname.new(file).dirname FileUtils.mkdir_p(dir) unless dir.exist? File.open(file, 'w') do |f| Origen.interface.referenced_patterns.uniq.sort.each do |pat| f.puts pat end end end end
merge_file_or_directory(file, options)
click to toggle source
# File lib/origen/generator.rb, line 72 def merge_file_or_directory(file, options) Job.new(file, options).run end
option_pipeline()
click to toggle source
# File lib/origen/generator.rb, line 92 def option_pipeline @option_pipeline ||= [] end
pattern()
click to toggle source
# File lib/origen/generator.rb, line 19 def pattern @pattern ||= Pattern.new end
pattern_finder()
click to toggle source
# File lib/origen/generator.rb, line 80 def pattern_finder @pattern_finder ||= PatternFinder.new end
resources()
click to toggle source
# File lib/origen/generator.rb, line 27 def resources @resources ||= Resources.new end
stage()
click to toggle source
# File lib/origen/generator.rb, line 31 def stage @stage ||= Stage.new end