wwwjdic 13.0.1 → 16.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.
Files changed (97) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +60 -1
  3. data/Gemfile +7 -1
  4. data/README.md +500 -225
  5. data/Rakefile +10 -3
  6. data/copyright.md +17 -29
  7. data/examples/basics.rb +53 -45
  8. data/examples/translate.rb +159 -86
  9. data/examples/uri.rb +46 -78
  10. data/html/CHANGELOG.html +90 -35
  11. data/html/COPYING_md.html +26 -38
  12. data/html/Gemfile.html +25 -35
  13. data/html/Object.html +838 -74
  14. data/html/README_md.html +322 -175
  15. data/html/Rakefile.html +28 -38
  16. data/html/WWWJDic.html +63 -104
  17. data/html/WWWJDic/ParsableDuckType.html +38 -58
  18. data/html/WWWJDic/Parser.html +52 -92
  19. data/html/WWWJDic/Parsers.html +29 -35
  20. data/html/WWWJDic/Parsers/Dict.html +50 -76
  21. data/html/WWWJDic/Parsers/Display.html +45 -69
  22. data/html/WWWJDic/Parsers/Key.html +46 -70
  23. data/html/WWWJDic/Parsers/Search.html +41 -61
  24. data/html/WWWJDic/Parsers/Server.html +45 -69
  25. data/html/WWWJDic/Splitter.html +81 -175
  26. data/html/WWWJDic/Utils.html +30 -36
  27. data/html/WWWJDic/Utils/Downloader.html +41 -41
  28. data/html/WWWJDic/Utils/Downloader/Downloader.html +65 -92
  29. data/html/WWWJDic/Utils/Raisers.html +46 -98
  30. data/html/WWWJDic/WWWJDic.html +166 -348
  31. data/html/copyright_md.html +219 -239
  32. data/html/created.rid +33 -58
  33. data/html/css/rdoc.css +638 -590
  34. data/html/index.html +313 -182
  35. data/html/js/darkfish.js +84 -161
  36. data/html/js/navigation.js +4 -40
  37. data/html/js/navigation.js.gz +0 -0
  38. data/html/js/search.js +109 -109
  39. data/html/js/search_index.js +1 -1
  40. data/html/js/search_index.js.gz +0 -0
  41. data/html/js/searcher.js +228 -229
  42. data/html/js/searcher.js.gz +0 -0
  43. data/html/table_of_contents.html +161 -200
  44. data/lib/wwwjdic.rb +14 -15
  45. data/lib/wwwjdic/application.rb +68 -36
  46. data/lib/wwwjdic/constants.rb +56 -12
  47. data/lib/wwwjdic/locales/de.yml +9 -4
  48. data/lib/wwwjdic/locales/en.yml +9 -4
  49. data/lib/wwwjdic/locales/es.yml +9 -4
  50. data/lib/wwwjdic/locales/fr.yml +9 -4
  51. data/lib/wwwjdic/locales/hu.yml +9 -4
  52. data/lib/wwwjdic/locales/it.yml +9 -4
  53. data/lib/wwwjdic/locales/ja.yml +11 -5
  54. data/lib/wwwjdic/locales/nl.yml +9 -4
  55. data/lib/wwwjdic/locales/ru.yml +9 -4
  56. data/lib/wwwjdic/locales/sl.yml +9 -4
  57. data/lib/wwwjdic/locales/sv.yml +9 -4
  58. data/lib/wwwjdic/parser.rb +13 -8
  59. data/lib/wwwjdic/parsers/dict.rb +11 -8
  60. data/lib/wwwjdic/parsers/display.rb +8 -3
  61. data/lib/wwwjdic/parsers/key.rb +9 -3
  62. data/lib/wwwjdic/parsers/search.rb +10 -3
  63. data/lib/wwwjdic/parsers/server.rb +8 -3
  64. data/lib/wwwjdic/utils/downloader.rb +37 -34
  65. data/lib/wwwjdic/utils/raisers.rb +12 -15
  66. data/lib/wwwjdic/utils/splitter.rb +32 -18
  67. data/lib/wwwjdic/version.rb +22 -8
  68. data/test/test_helper.rb +10 -1
  69. data/test/test_wwwjdic.rb +10 -4
  70. data/test/wwwjdic/locales/de.yml +9 -1
  71. data/test/wwwjdic/locales/en.yml +9 -1
  72. data/test/wwwjdic/locales/es.yml +9 -1
  73. data/test/wwwjdic/locales/fr.yml +9 -1
  74. data/test/wwwjdic/locales/hu.yml +9 -1
  75. data/test/wwwjdic/locales/it.yml +10 -1
  76. data/test/wwwjdic/locales/ja.yml +11 -2
  77. data/test/wwwjdic/locales/nl.yml +9 -1
  78. data/test/wwwjdic/locales/ru.yml +9 -1
  79. data/test/wwwjdic/locales/sl.yml +9 -1
  80. data/test/wwwjdic/locales/sv.yml +9 -1
  81. data/test/wwwjdic/locales/test_locales.rb +41 -24
  82. data/test/wwwjdic/parsers/test_dict.rb +65 -37
  83. data/test/wwwjdic/parsers/test_display.rb +11 -5
  84. data/test/wwwjdic/parsers/test_key.rb +10 -4
  85. data/test/wwwjdic/parsers/test_server.rb +11 -5
  86. data/test/wwwjdic/test_application.rb +199 -149
  87. data/test/wwwjdic/test_parsable_duck_type.rb +9 -5
  88. data/test/wwwjdic/utils/test_downloader.rb +7 -1
  89. data/test/wwwjdic/utils/test_raisers.rb +46 -29
  90. data/wwwjdic.gemspec +44 -26
  91. metadata +55 -43
  92. data/acknowledgements.md +0 -55
  93. data/authors.md +0 -67
  94. data/html/acknowledgements_md.html +0 -149
  95. data/html/authors_md.html +0 -181
  96. data/html/js/jquery.js +0 -4
  97. data/html/wwwjdic_gemspec.html +0 -161
@@ -1,5 +1,8 @@
1
+ #--
1
2
  # wwwjdic
2
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
3
+ # rubocop:disable Style/AsciiComments
4
+ # © 2014-2021 Marco Bresciani
5
+ # rubocop:enable Style/AsciiComments
3
6
  #
4
7
  # This file is part of wwwjdic.
5
8
  #
@@ -15,6 +18,11 @@
15
18
  #
16
19
  # You should have received a copy of the GNU General Public License
17
20
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
21
+ #
22
+ # SPDX-FileCopyrightText: 2014-2021 Marco Bresciani
23
+ #
24
+ # SPDX-License-Identifier: GPL-3.0-or-later
25
+ #++
18
26
 
19
27
  hu:
20
28
  error:
@@ -24,6 +32,3 @@ hu:
24
32
  value: "Érték %{value} nem a megengedett tartományban."
25
33
  warn:
26
34
  deprecated: Ez a módszer már elavult.
27
- test:
28
- kotoba: hír
29
- test: test data
@@ -1,5 +1,8 @@
1
+ #--
1
2
  # wwwjdic
2
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
3
+ # rubocop:disable Style/AsciiComments
4
+ # © 2014-2021 Marco Bresciani
5
+ # rubocop:enable Style/AsciiComments
3
6
  #
4
7
  # This file is part of wwwjdic.
5
8
  #
@@ -15,6 +18,11 @@
15
18
  #
16
19
  # You should have received a copy of the GNU General Public License
17
20
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
21
+ #
22
+ # SPDX-FileCopyrightText: 2014-2021 Marco Bresciani
23
+ #
24
+ # SPDX-License-Identifier: GPL-3.0-or-later
25
+ #++
18
26
 
19
27
  it:
20
28
  error:
@@ -24,6 +32,3 @@ it:
24
32
  value: "Il valore %{value} non è nell'intervallo previsto."
25
33
  warn:
26
34
  deprecated: Questo metodo è obsoleto.
27
- test:
28
- kotoba: parola
29
- test: dato di prova
@@ -1,6 +1,9 @@
1
+ #--
1
2
  # wwwjdic
2
- # Copyright © 2013 新部裕
3
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 新部裕, Marco Bresciani
3
+ # rubocop:disable Style/AsciiComments
4
+ # © 2013 新部裕
5
+ # © 2014-2021 Marco Bresciani
6
+ # rubocop:enable Style/AsciiComments
4
7
  #
5
8
  # This file is part of wwwjdic.
6
9
  #
@@ -16,6 +19,12 @@
16
19
  #
17
20
  # You should have received a copy of the GNU General Public License
18
21
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
22
+ #
23
+ # SPDX-FileCopyrightText: 2013 新部裕
24
+ # SPDX-FileCopyrightText: 2014-2021 Marco Bresciani
25
+ #
26
+ # SPDX-License-Identifier: GPL-3.0-or-later
27
+ #++
19
28
 
20
29
  ja:
21
30
  error:
@@ -25,6 +34,3 @@ ja:
25
34
  value: "値 %{value} が範囲外です。"
26
35
  warn:
27
36
  deprecated: このメソッドはすでに廃止され、推奨されていません。
28
- test:
29
- kotoba: 言葉
30
- test: 試験データ
@@ -1,5 +1,8 @@
1
+ #--
1
2
  # wwwjdic
2
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
3
+ # rubocop:disable Style/AsciiComments
4
+ # © 2014-2021 Marco Bresciani
5
+ # rubocop:enable Style/AsciiComments
3
6
  #
4
7
  # This file is part of wwwjdic.
5
8
  #
@@ -15,6 +18,11 @@
15
18
  #
16
19
  # You should have received a copy of the GNU General Public License
17
20
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
21
+ #
22
+ # SPDX-FileCopyrightText: 2014-2021 Marco Bresciani
23
+ #
24
+ # SPDX-License-Identifier: GPL-3.0-or-later
25
+ #++
18
26
 
19
27
  nl:
20
28
  error:
@@ -24,6 +32,3 @@ nl:
24
32
  value: "Waarde %{value} is niet in toegestane bereik."
25
33
  warn:
26
34
  deprecated: Deze methode is verouderd.
27
- test:
28
- kotoba: taal
29
- test: test data
@@ -1,5 +1,8 @@
1
+ #--
1
2
  # wwwjdic
2
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
3
+ # rubocop:disable Style/AsciiComments
4
+ # © 2014-2021 Marco Bresciani
5
+ # rubocop:enable Style/AsciiComments
3
6
  #
4
7
  # This file is part of wwwjdic.
5
8
  #
@@ -15,6 +18,11 @@
15
18
  #
16
19
  # You should have received a copy of the GNU General Public License
17
20
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
21
+ #
22
+ # SPDX-FileCopyrightText: 2014-2021 Marco Bresciani
23
+ #
24
+ # SPDX-License-Identifier: GPL-3.0-or-later
25
+ #++
18
26
 
19
27
  ru:
20
28
  error:
@@ -24,6 +32,3 @@ ru:
24
32
  value: "Значение %{value} не в допустимом диапазоне."
25
33
  warn:
26
34
  deprecated: Этот метод является устаревшим.
27
- test:
28
- kotoba: слово
29
- test: test data
@@ -1,5 +1,8 @@
1
+ #--
1
2
  # wwwjdic
2
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
3
+ # rubocop:disable Style/AsciiComments
4
+ # © 2014-2021 Marco Bresciani
5
+ # rubocop:enable Style/AsciiComments
3
6
  #
4
7
  # This file is part of wwwjdic.
5
8
  #
@@ -15,6 +18,11 @@
15
18
  #
16
19
  # You should have received a copy of the GNU General Public License
17
20
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
21
+ #
22
+ # SPDX-FileCopyrightText: 2014-2021 Marco Bresciani
23
+ #
24
+ # SPDX-License-Identifier: GPL-3.0-or-later
25
+ #++
18
26
 
19
27
  sl:
20
28
  error:
@@ -24,6 +32,3 @@ sl:
24
32
  value: "Vrednost %{value} ni v dovoljenem obsegu."
25
33
  warn:
26
34
  deprecated: Ta metoda je bila opuščena.
27
- test:
28
- kotoba: beseda
29
- test: test data
@@ -1,5 +1,8 @@
1
+ #--
1
2
  # wwwjdic
2
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
3
+ # rubocop:disable Style/AsciiComments
4
+ # © 2014-2021 Marco Bresciani
5
+ # rubocop:enable Style/AsciiComments
3
6
  #
4
7
  # This file is part of wwwjdic.
5
8
  #
@@ -15,6 +18,11 @@
15
18
  #
16
19
  # You should have received a copy of the GNU General Public License
17
20
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
21
+ #
22
+ # SPDX-FileCopyrightText: 2014-2021 Marco Bresciani
23
+ #
24
+ # SPDX-License-Identifier: GPL-3.0-or-later
25
+ #++
18
26
 
19
27
  sv:
20
28
  error:
@@ -24,6 +32,3 @@ sv:
24
32
  value: "Värde %{value} är inte tillåtet intervall."
25
33
  warn:
26
34
  deprecated: Denna metod har föråldrad.
27
- test:
28
- kotoba: ord
29
- test: test data
@@ -1,6 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # wwwjdic
3
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
5
+ # © 2014-2021 Marco Bresciani
4
6
  #
5
7
  # This file is part of wwwjdic.
6
8
  #
@@ -16,31 +18,34 @@
16
18
  #
17
19
  # You should have received a copy of the GNU General Public License
18
20
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
21
+ #
22
+ # SPDX-FileCopyrightText: 2014-2021 Marco Bresciani
23
+ #
24
+ # SPDX-License-Identifier: GPL-3.0-or-later
19
25
  #++
20
26
 
21
27
  require_relative 'constants'
22
28
 
23
29
  module WWWJDic
24
-
25
30
  # This class is a simple utility that is used to parse and filter
26
31
  # parameters for wwwjdic.
27
32
  #
28
33
  # Author:: {Marco Bresciani}[mailto:marcobresciani_1974@libero.it]
29
- # Copyright:: Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
34
+ # Copyright:: © 2014-2021 Marco Bresciani
30
35
  # License:: GNU General Public License version 3
31
36
  class Parser
32
37
  attr_reader :parsers
33
38
 
34
39
  def initialize(args = {})
35
- @parsers = Hash.new
36
- ALL_PARAMS.each {|param| parsers[param] = args[param]} unless args.nil?
40
+ @parsers = {}
41
+ ALL_PARAMS.each { |param| parsers[param] = args[param] } unless args.nil?
37
42
  end
38
43
 
39
44
  # Provides the duck type for a generic parsing object.
40
- def parse(method = nil, value = nil)
45
+ def parse(method = nil, params = nil)
41
46
  a_parser = nil
42
- a_parser = parsers[method.to_sym] unless method.nil? or parsers.nil?
43
- a_parser.parse value unless a_parser.nil?
47
+ a_parser = parsers[method.to_sym] unless method.nil? || parsers.nil?
48
+ a_parser&.parse params
44
49
  end
45
50
  end
46
51
  end
@@ -1,6 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # wwwjdic
3
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
5
+ # © 2014-2021 Marco Bresciani
4
6
  #
5
7
  # This file is part of wwwjdic.
6
8
  #
@@ -16,6 +18,10 @@
16
18
  #
17
19
  # You should have received a copy of the GNU General Public License
18
20
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
21
+ #
22
+ # SPDX-FileCopyrightText: 2014-2021 Marco Bresciani
23
+ #
24
+ # SPDX-License-Identifier: GPL-3.0-or-later
19
25
  #++
20
26
 
21
27
  require_relative '../constants'
@@ -23,7 +29,6 @@ require_relative '../utils/raisers'
23
29
 
24
30
  module WWWJDic
25
31
  module Parsers
26
-
27
32
  # This class is an implementation of the Parsable duck type that
28
33
  # checks the dictionary type. The only needed parameter is a valid
29
34
  # dictionary.
@@ -32,7 +37,7 @@ module WWWJDic
32
37
  # source of one of the pages to get the full list of codes.)
33
38
  #
34
39
  # Author:: {Marco Bresciani}[mailto:marcobresciani_1974@libero.it]
35
- # Copyright:: Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
40
+ # Copyright:: © 2014-2021 Marco Bresciani
36
41
  # License:: GNU General Public License version 3
37
42
  class Dict
38
43
  include Utils::Raisers
@@ -46,11 +51,9 @@ module WWWJDic
46
51
  if value.length == 1
47
52
  raiser_array('error.param', value, DICTIONARY_CODES)
48
53
  value
49
- else
50
- if value.length > 1
51
- raiser_array('error.param', value, DICTIONARY_NAMES)
52
- DICTS_BY_NAMES[value]
53
- end
54
+ elsif value.length > 1
55
+ raiser_array('error.param', value, DICTIONARY_NAMES)
56
+ DICTS_BY_NAMES[value]
54
57
  end
55
58
  end
56
59
  end
@@ -1,6 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # wwwjdic
3
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
5
+ # © 2014-2021 Marco Bresciani
4
6
  #
5
7
  # This file is part of wwwjdic.
6
8
  #
@@ -16,13 +18,16 @@
16
18
  #
17
19
  # You should have received a copy of the GNU General Public License
18
20
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
21
+ #
22
+ # SPDX-FileCopyrightText: 2014-2021 Marco Bresciani
23
+ #
24
+ # SPDX-License-Identifier: GPL-3.0-or-later
19
25
  #++
20
26
 
21
27
  require_relative '../constants'
22
28
 
23
29
  module WWWJDic
24
30
  module Parsers
25
-
26
31
  # This class is an implementation of the Parsable duck type that
27
32
  # checks the display type. The only needed parameter is a boolean,
28
33
  # with +true+ for regular.
@@ -31,7 +36,7 @@ module WWWJDic
31
36
  # dictionary display)
32
37
  #
33
38
  # Author:: {Marco Bresciani}[mailto:marcobresciani_1974@libero.it]
34
- # Copyright:: Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
39
+ # Copyright:: © 2014-2021 Marco Bresciani
35
40
  # License:: GNU General Public License version 3
36
41
  class Display
37
42
  include Utils::Raisers
@@ -1,6 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # wwwjdic
3
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
5
+ # © 2014-2021 Marco Bresciani
4
6
  #
5
7
  # This file is part of wwwjdic.
6
8
  #
@@ -16,6 +18,10 @@
16
18
  #
17
19
  # You should have received a copy of the GNU General Public License
18
20
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
21
+ #
22
+ # SPDX-FileCopyrightText: 2014-2021 Marco Bresciani
23
+ #
24
+ # SPDX-License-Identifier: GPL-3.0-or-later
19
25
  #++
20
26
 
21
27
  require_relative '../constants'
@@ -56,13 +62,13 @@ module WWWJDic
56
62
  # displayed.
57
63
  #
58
64
  # Author:: {Marco Bresciani}[mailto:marcobresciani_1974@libero.it]
59
- # Copyright:: Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
65
+ # Copyright:: © 2014-2021 Marco Bresciani
60
66
  # License:: GNU General Public License version 3
61
67
  class Key
62
68
  include Utils::Raisers
63
69
 
64
70
  # The parsable duck type interface to every parser usage.
65
- def parse(value = :exact)
71
+ def parse(value = :english)
66
72
  raise ArgumentError, I18n.t('error.nil') if value.nil?
67
73
  raise ArgumentError, I18n.t('error.param', value: value) unless value.is_a? Symbol
68
74
 
@@ -1,6 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # wwwjdic
3
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
5
+ # © 2014-2021 Marco Bresciani
4
6
  #
5
7
  # This file is part of wwwjdic.
6
8
  #
@@ -16,6 +18,10 @@
16
18
  #
17
19
  # You should have received a copy of the GNU General Public License
18
20
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
21
+ #
22
+ # SPDX-FileCopyrightText: 2014-2021 Marco Bresciani
23
+ #
24
+ # SPDX-License-Identifier: GPL-3.0-or-later
19
25
  #++
20
26
 
21
27
  module WWWJDic
@@ -47,12 +53,13 @@ module WWWJDic
47
53
  # * for example sentence lookups using a regular expression, use T.
48
54
  #
49
55
  # Author:: {Marco Bresciani}[mailto:marcobresciani_1974@libero.it]
50
- # Copyright:: Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
56
+ # Copyright:: © 2014-2021 Marco Bresciani
51
57
  # License:: GNU General Public License version 3
52
58
  class Search
53
59
  # The parsable duck type interface to every parser usage.
54
60
  def parse(value = '')
55
- return 'D' if value == CGI::escape(value).to_s
61
+ return 'D' if value == CGI.escape(value).to_s
62
+
56
63
  'U'
57
64
  end
58
65
  end
@@ -1,6 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  #--
2
4
  # wwwjdic
3
- # Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
5
+ # © 2014-2021 Marco Bresciani
4
6
  #
5
7
  # This file is part of wwwjdic.
6
8
  #
@@ -16,19 +18,22 @@
16
18
  #
17
19
  # You should have received a copy of the GNU General Public License
18
20
  # along with wwwjdic. If not, see <http://www.gnu.org/licenses/>.
21
+ #
22
+ # SPDX-FileCopyrightText: 2014-2021 Marco Bresciani
23
+ #
24
+ # SPDX-License-Identifier: GPL-3.0-or-later
19
25
  #++
20
26
 
21
27
  require_relative '../constants'
22
28
 
23
29
  module WWWJDic
24
30
  module Parsers
25
-
26
31
  # This class is an implementation of the Parsable duck type that
27
32
  # checks the display type. The only needed parameter is a boolean,
28
33
  # with +true+ for regular.
29
34
  #
30
35
  # Author:: {Marco Bresciani}[mailto:marcobresciani_1974@libero.it]
31
- # Copyright:: Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Marco Bresciani
36
+ # Copyright:: © 2014-2021 Marco Bresciani
32
37
  # License:: GNU General Public License version 3
33
38
  class Server
34
39
  include Utils::Raisers