italian-ruby 1.0.3 → 1.0.8

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9ad4d3de4b1bea4fc957d1b2ff9f9817bb16680c0a7c2f6c0e5da21a96e35c98
4
- data.tar.gz: d02978bda604b1e7ba0a6e307a423dc6a4e7923a6c90583d1021c2011422198e
3
+ metadata.gz: b6f25bb040af291f994959ec913c35fd424bed4d24785bb132ec195178afc323
4
+ data.tar.gz: 77f1d4bca20cc40f88cf9505b1315c1e510d2a8ea99f4f8f16398f6169b58665
5
5
  SHA512:
6
- metadata.gz: 60f19363e70ec6c54fc9b4b1ef5f494c92e986e4db2f806a33dcd0d68affac0681d919ac562d548f0fc72b540a99b1564aeda454ff40cc5df29cbc0da12acaa4
7
- data.tar.gz: e2e8846c4d1781b54265a56fc8bfb71ff6dcab7173366d78919de3b7d010c040576b3dcda5e1827272a694ecab8f662aa0250090a52acb87df02d2087b8272e1
6
+ metadata.gz: c2a06bdc7d99b7e17ca6ce7da00cff6bddf5fd2c5df90f2177cc89d6a3bacc3ccf757c800494cb81c90ae17d9f107a24874a60bca6a9b4980b203943b5dd1b89
7
+ data.tar.gz: dde508ddbecd9cb689022e0e38817670f17df2fc15848fb7c2e61dae578a5d2e3206c458590195483e854a28d198829497368a9f10da5900687e10a415ba23b1
@@ -6,7 +6,9 @@ class Array
6
6
  alias :per_ogni :each
7
7
  alias :per_ognuno :each
8
8
  alias :per_ognuna :each
9
+ alias :in_fette_da :each_slice
9
10
  alias :mappa :map
11
+ alias :mappa! :map!
10
12
  alias :vuoto? :empty?
11
13
  alias :vuota? :empty?
12
14
  alias :primo :first
@@ -76,6 +78,8 @@ class Array
76
78
 
77
79
  alias :specificato? :esiste?
78
80
  alias :specificata? :esiste?
81
+ alias :specificati? :esiste?
82
+ alias :specificate? :esiste?
79
83
  alias :seconda :secondo
80
84
  alias :salta_gli_ultimi :tronca
81
85
  alias :salta_le_ultime :tronca
@@ -37,6 +37,7 @@ class Hash
37
37
  alias :almeno_una? :any?
38
38
  alias :nessuno? :none?
39
39
  alias :nessuna? :none?
40
+ alias :in_stringa :to_json
40
41
  alias :in_mappa :to_h
41
42
  alias :in_lista :to_a
42
43
  alias :inverti :invert
@@ -3,7 +3,9 @@
3
3
  module Kernel
4
4
 
5
5
  alias :classe :class
6
+ alias :traccia_chiamante :caller_locations
6
7
  alias :ottieni_variabile_istanza :instance_variable_get
7
8
  alias :imposta_variabile_istanza :instance_variable_set
9
+ alias :rimuovi_variabile_istanza :remove_instance_variable
8
10
 
9
11
  end
@@ -9,6 +9,8 @@ class Range
9
9
  alias :in_lista :to_a
10
10
  alias :conteggio :count
11
11
  alias :lunghezza :count
12
+ alias :inizio :first
13
+ alias :termine :last
12
14
 
13
15
  end
14
16
 
@@ -2,6 +2,7 @@
2
2
 
3
3
  require_relative "metodi/array"
4
4
  require_relative "metodi/date"
5
+ require_relative "metodi/false_class"
5
6
  require_relative "metodi/hash"
6
7
  require_relative "metodi/integer"
7
8
  require_relative "metodi/json"
@@ -9,9 +10,12 @@ require_relative "metodi/kernel"
9
10
  require_relative "metodi/main"
10
11
  require_relative "metodi/module"
11
12
  require_relative "metodi/nil_class"
13
+ require_relative "metodi/numeric"
12
14
  require_relative "metodi/object"
13
15
  require_relative "metodi/open_struct"
14
16
  require_relative "metodi/range"
15
17
  require_relative "metodi/socket"
16
18
  require_relative "metodi/string"
19
+ require_relative "metodi/symbol"
17
20
  require_relative "metodi/time"
21
+ require_relative "metodi/true_class"
@@ -102,4 +102,18 @@ class Array
102
102
  self.drop 1
103
103
  end
104
104
 
105
+ ##
106
+ # Rappresentazione per stampa.
107
+ def _stampa(i = 0)
108
+ return "[]" if empty?
109
+ spazi = i.times.map { " " }.join
110
+ spazi_valori = (i + 2).times.map { " " }.join
111
+ [ "[",
112
+ *self.map do |e|
113
+ "#{spazi_valori}#{e._stampa(i + 2)},"
114
+ end,
115
+ "#{spazi}]"
116
+ ].join("\r\n")
117
+ end
118
+
105
119
  end
@@ -43,4 +43,10 @@ class Date
43
43
  .gsub(/December/i, "Dicembre")
44
44
  end
45
45
 
46
+ ##
47
+ # Rappresentazione per stampa.
48
+ def _stampa(*args)
49
+ formatta("%d %B %Y").arancione
50
+ end
51
+
46
52
  end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ class FalseClass
4
+
5
+ ##
6
+ # Rappresentazione per stampa.
7
+ def _stampa(*args)
8
+ "no".rosso
9
+ end
10
+
11
+ end
@@ -54,4 +54,52 @@ class Hash
54
54
  self.select { |key, value| key.in? keys }
55
55
  end
56
56
 
57
+ ##
58
+ # Ritorna una rappresentazione a singolo livello, con notazione ".".
59
+ def puntifica(*prefissi)
60
+ mappa_puntificata = {}
61
+
62
+ self.each do |chiave, valore|
63
+ case valore
64
+ when Hash
65
+ valore.puntifica *prefissi, chiave do |chiave_prefissa, valore_finale|
66
+ if block_given?
67
+ yield chiave_prefissa, valore_finale
68
+ else
69
+ mappa_puntificata.store chiave_prefissa, valore_finale
70
+ end
71
+ end
72
+ else
73
+ prefisso = [ *prefissi, chiave ].unisci "."
74
+ if block_given?
75
+ yield prefisso, valore
76
+ else
77
+ mappa_puntificata.store prefisso, valore
78
+ end
79
+ end
80
+ end
81
+
82
+ mappa_puntificata
83
+ end
84
+
85
+ ##
86
+ # Rappresentazione per stampa.
87
+ def _stampa(i = 0)
88
+ return "{}" if empty?
89
+ spazi = i.times.map { " " }.join
90
+ spazi_chiavi = (i + 2).times.map { " " }.join
91
+ [ "{",
92
+ *self.map do |k, v|
93
+ if k.is_a? Symbol
94
+ "#{spazi_chiavi}#{k}: #{v._stampa(i + 2)},"
95
+ elsif k.is_a? String
96
+ "#{spazi_chiavi}\"#{k}\" => #{v._stampa(i + 2)},"
97
+ else
98
+ "#{spazi_chiavi}#{k._stampa(i + 2)} => #{v._stampa(i + 2)},"
99
+ end
100
+ end,
101
+ "#{spazi}}"
102
+ ].join("\r\n")
103
+ end
104
+
57
105
  end
@@ -8,4 +8,10 @@ class NilClass
8
8
  !nil?
9
9
  end
10
10
 
11
+ ##
12
+ # Rappresentazione per stampa.
13
+ def _stampa(*args)
14
+ "nullo".azzurro
15
+ end
16
+
11
17
  end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ class Numeric
4
+
5
+ ##
6
+ # Rappresentazione per stampa.
7
+ def _stampa(*args)
8
+ self.to_s.verde
9
+ end
10
+
11
+ end
@@ -53,6 +53,12 @@ class Object
53
53
  to_json
54
54
  end
55
55
 
56
+ ##
57
+ # Rappresentazione per stampa.
58
+ def _stampa(*args)
59
+ inspect
60
+ end
61
+
56
62
  private
57
63
 
58
64
  ##
@@ -5,13 +5,14 @@ class String
5
5
  ##
6
6
  # Codici colori.
7
7
  CODICI_COLORI = Hash[
8
- rosso: "31",
9
- verde: "32",
10
- giallo: "33",
11
- blu: "34",
12
- magenta: "35",
13
- azzurro: "36",
14
- arancione: "38;5;214"
8
+ rosso: "31",
9
+ verde: "32",
10
+ giallo: "33",
11
+ blu: "34",
12
+ magenta: "35",
13
+ azzurro: "36",
14
+ arancione: "38;5;214",
15
+ verde_pallido: "38;5;157"
15
16
  ].freeze
16
17
 
17
18
  ##
@@ -53,6 +54,10 @@ class String
53
54
  colorize CODICI_COLORI[:arancione]
54
55
  end
55
56
 
57
+ def verde_pallido
58
+ colorize CODICI_COLORI[:verde_pallido]
59
+ end
60
+
56
61
  def decolorizza
57
62
  self.gsub /(\u001b\[3\dm|\u001b\[3\d;\d;\d\d\dm|\u001b\[0m)/, ""
58
63
  end
@@ -165,4 +170,16 @@ class String
165
170
  end
166
171
  end
167
172
 
173
+ ##
174
+ # Restituisce l'ultimo indice della stringa.
175
+ def ultimo_indice
176
+ self.length - 1
177
+ end
178
+
179
+ ##
180
+ # Rappresentazione per stampa.
181
+ def _stampa(*args)
182
+ %{"#{self}"}.giallo
183
+ end
184
+
168
185
  end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ class Symbol
4
+
5
+ ##
6
+ # Rappresentazione per stampa.
7
+ def _stampa(*args)
8
+ ":#{self}".blu
9
+ end
10
+
11
+ end
@@ -48,4 +48,10 @@ class Time
48
48
  Time.new(self.year, self.month, self.day, self.hour, self.min, 59)
49
49
  end
50
50
 
51
+ ##
52
+ # Rappresentazione per stampa.
53
+ def _stampa(*args)
54
+ "#{in_data.formatta "%d %B %Y"} #{strftime "%H:%M:%S %z"}".arancione
55
+ end
56
+
51
57
  end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ class TrueClass
4
+
5
+ ##
6
+ # Rappresentazione per stampa.
7
+ def _stampa(*args)
8
+ "si".verde
9
+ end
10
+
11
+ end
@@ -1,5 +1,5 @@
1
1
  module Italian
2
2
  module Ruby
3
- VERSIONE = "1.0.3"
3
+ VERSIONE = "1.0.8"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: italian-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Francesco Ballardin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-11-05 00:00:00.000000000 Z
11
+ date: 2020-12-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -109,6 +109,7 @@ files:
109
109
  - lib/italian/ruby/metodi.rb
110
110
  - lib/italian/ruby/metodi/array.rb
111
111
  - lib/italian/ruby/metodi/date.rb
112
+ - lib/italian/ruby/metodi/false_class.rb
112
113
  - lib/italian/ruby/metodi/hash.rb
113
114
  - lib/italian/ruby/metodi/integer.rb
114
115
  - lib/italian/ruby/metodi/json.rb
@@ -116,13 +117,16 @@ files:
116
117
  - lib/italian/ruby/metodi/main.rb
117
118
  - lib/italian/ruby/metodi/module.rb
118
119
  - lib/italian/ruby/metodi/nil_class.rb
120
+ - lib/italian/ruby/metodi/numeric.rb
119
121
  - lib/italian/ruby/metodi/object.rb
120
122
  - lib/italian/ruby/metodi/open_struct.rb
121
123
  - lib/italian/ruby/metodi/range.rb
122
124
  - lib/italian/ruby/metodi/rspec.rb
123
125
  - lib/italian/ruby/metodi/socket.rb
124
126
  - lib/italian/ruby/metodi/string.rb
127
+ - lib/italian/ruby/metodi/symbol.rb
125
128
  - lib/italian/ruby/metodi/time.rb
129
+ - lib/italian/ruby/metodi/true_class.rb
126
130
  - lib/italian/ruby/traduttore.rb
127
131
  - lib/italian/ruby/traduttore/linea.rb
128
132
  - lib/italian/ruby/traduttore/pezzo.rb