mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	Add Language class
This commit is contained in:
		
							
								
								
									
										33
									
								
								lib/linguist/language.rb
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								lib/linguist/language.rb
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | |||||||
|  | require 'yaml' | ||||||
|  |  | ||||||
|  | module Linguist | ||||||
|  |   class Language | ||||||
|  |     @name_index = {} | ||||||
|  |  | ||||||
|  |     def self.create(name) | ||||||
|  |       language = new(name) | ||||||
|  |  | ||||||
|  |       @name_index[language.name] = language | ||||||
|  |  | ||||||
|  |       language | ||||||
|  |     end | ||||||
|  |  | ||||||
|  |     def self.find_by_name(name) | ||||||
|  |       @name_index[name] | ||||||
|  |     end | ||||||
|  |  | ||||||
|  |     def self.[](name) | ||||||
|  |       find_by_name(name) | ||||||
|  |     end | ||||||
|  |  | ||||||
|  |     attr_reader :name | ||||||
|  |  | ||||||
|  |     def initialize(name) | ||||||
|  |       @name = name | ||||||
|  |     end | ||||||
|  |   end | ||||||
|  |  | ||||||
|  |   YAML.load_file(File.expand_path("../extensions.yml", __FILE__)).each do |name, options| | ||||||
|  |     Language.create(name) | ||||||
|  |   end | ||||||
|  | end | ||||||
		Reference in New Issue
	
	Block a user