Sha256: 77c52ff63611221f7e91e66aeae9bdeff70cdae9f964426484438f08c12e5ff4

Contents?: true

Size: 757 Bytes

Versions: 1

Compression:

Stored size: 757 Bytes

Contents

require 'yaml'

module Jeka
  class Implementation
    attr_reader :database
    attr_accessor :name
    attr_accessor :compiler
    
    def initialize(name)
      @name = name
      @information = {}
    end
    
    def information=(info)
      if info.kind_of? Hash
        @information = info
      else
        @yaml = YAML::load(File.open(info))
        @yaml.each_key {|key| @information[key.to_sym] = @yaml[key]}
      end
    end
    
    def information
      @information
    end
    
    def jekafy
      @database = Jeka::Analysis::Implementation.create!(
        name: @name,
        compiler: @compiler.jekafy,
        implementation_information: Jeka::Analysis::ImplementationInformation.convert(@information)
      )
    end
    
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
jeka-0.2.3 lib/jeka/implementation.rb