Sha256: 59e600eabe6a20a0df482af4a3d990db274c8c885fee377c5e070e9063cc79ca

Contents?: true

Size: 633 Bytes

Versions: 8

Compression:

Stored size: 633 Bytes

Contents

# Copyright 2024 Kyrylo Shyshko
# Licensed under the Apache License, Version 2.0. See LICENSE file for details.

module Kompiler

	# Object for managing architecture entries / available architectures
	class ArchManager
		@arch_entries = []
		
		def self.add_arch(arch_name, include_path)
			@arch_entries << {name: arch_name, include_path: include_path}
		end
		
		def self.get_arch(arch_name)
			@arch_entries.filter{|entry| entry[:name] == arch_name}[0]
		end
		
		def self.entries
			@arch_entries
		end
		
		def self.load_all_entries
			Dir[File.join(__dir__, 'arch_entries', '*.rb')].each { |file| require file }
		end
	end

end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
kompiler-0.3.0.pre.2 lib/kompiler/arch_manager.rb
kompiler-0.3.0.pre.1 lib/kompiler/arch_manager.rb
kompiler-0.2.0 lib/kompiler/arch_manager.rb
kompiler-0.2.0.pre.2 lib/kompiler/arch_manager.rb
kompiler-0.2.0.pre.1 lib/kompiler/arch_manager.rb
kompiler-0.1.2 lib/kompiler/arch_manager.rb
kompiler-0.1.1 lib/kompiler/arch_manager.rb
kompiler-0.1.0 lib/kompiler/arch_manager.rb