hello_world_ramziddin 0.0.0 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/bin/hello_world_ramziddin +4 -0
- data/lib/hello_world_ramziddin.rb +1 -5
- data/lib/hello_world_ramziddin/greeter.rb +59 -0
- metadata +10 -5
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ba47416f3151a12f572a8c71cde071c431640485
|
|
4
|
+
data.tar.gz: b0d4768b08d0ae4b4569b05805ca6afcf1bb8b39
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 58cea63eec1831af6daf45fdd124f599476678b1eef96236319909f1beffa4d280329aeeecd8703090fa2f4ffa8bbb526d984b817ff0f1503ac0c70f2aee80fc
|
|
7
|
+
data.tar.gz: 88aae1e7bf85b474d1a5835159cb92075e03e2f5e2ae79c9c1a2fc46194dab9b116355aeee383a28a208276aab26331cf91538320abf51baf15a31f50f36bbae
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# The main Greeter class
|
|
2
|
+
class Greeter
|
|
3
|
+
attr_reader :language
|
|
4
|
+
|
|
5
|
+
def initialize(language="English")
|
|
6
|
+
@language = language
|
|
7
|
+
@words = {
|
|
8
|
+
"English" => "Hello",
|
|
9
|
+
"Russian" => "Привет",
|
|
10
|
+
"Uzbek" => "Salom"
|
|
11
|
+
}
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# Multi-lang greet
|
|
15
|
+
#
|
|
16
|
+
# Example:
|
|
17
|
+
# >> greeter = Greeter.new
|
|
18
|
+
# >> greeter.greet
|
|
19
|
+
# => "Hello" # "English" as default language
|
|
20
|
+
# >> # or
|
|
21
|
+
# >> greeter.greet("Uzbek")
|
|
22
|
+
# => "Salom"
|
|
23
|
+
def greet(language=nil)
|
|
24
|
+
@words[language || @language]
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# Switch the language
|
|
28
|
+
#
|
|
29
|
+
# Example:
|
|
30
|
+
# >> greeter = Greeter.new
|
|
31
|
+
# >> greeter.language = "Russian"
|
|
32
|
+
# >> greeter.greet
|
|
33
|
+
# => "Привет" # Using "Russian" as default language
|
|
34
|
+
def language=(language_name)
|
|
35
|
+
raise "Uknown language" unless @words.include? language_name
|
|
36
|
+
@language = language_name
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# Add a new language and a word
|
|
40
|
+
#
|
|
41
|
+
# Example:
|
|
42
|
+
# >> greeter = Greeter.new
|
|
43
|
+
# >> greeter.add_language("Spanish", "Hola")
|
|
44
|
+
# >> greeter.greet("Spanish")
|
|
45
|
+
# => "Hola"
|
|
46
|
+
def add_language(language, greeting)
|
|
47
|
+
@words[language] = greeting
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
# Iterates over each word
|
|
51
|
+
#
|
|
52
|
+
# Example:
|
|
53
|
+
# >> greeter = Greeter.new
|
|
54
|
+
# >> greeter.each {|lang, word| greeter.greet(lang) }
|
|
55
|
+
# => ["English", "Russian", "Uzbek"]
|
|
56
|
+
def each(&block)
|
|
57
|
+
@words.each(&block)
|
|
58
|
+
end
|
|
59
|
+
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: hello_world_ramziddin
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ramziddin Makhmudov
|
|
@@ -10,13 +10,18 @@ bindir: bin
|
|
|
10
10
|
cert_chain: []
|
|
11
11
|
date: 2017-08-20 00:00:00.000000000 Z
|
|
12
12
|
dependencies: []
|
|
13
|
-
description:
|
|
13
|
+
description: |
|
|
14
|
+
The most professional Greeter program that
|
|
15
|
+
you will never need in your life. You are welcome.
|
|
14
16
|
email: ramziddin.makhmudov@gmail.com
|
|
15
|
-
executables:
|
|
17
|
+
executables:
|
|
18
|
+
- hello_world_ramziddin
|
|
16
19
|
extensions: []
|
|
17
20
|
extra_rdoc_files: []
|
|
18
21
|
files:
|
|
22
|
+
- bin/hello_world_ramziddin
|
|
19
23
|
- lib/hello_world_ramziddin.rb
|
|
24
|
+
- lib/hello_world_ramziddin/greeter.rb
|
|
20
25
|
homepage: http://ramziddin.com
|
|
21
26
|
licenses:
|
|
22
27
|
- MIT
|
|
@@ -37,8 +42,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
37
42
|
version: '0'
|
|
38
43
|
requirements: []
|
|
39
44
|
rubyforge_project:
|
|
40
|
-
rubygems_version: 2.
|
|
45
|
+
rubygems_version: 2.6.12
|
|
41
46
|
signing_key:
|
|
42
47
|
specification_version: 4
|
|
43
|
-
summary:
|
|
48
|
+
summary: Greeter class
|
|
44
49
|
test_files: []
|