low_type 0.7.0 → 0.7.1
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/lib/interfaces/proxy_interface.rb +1 -1
- data/lib/proxies/local_proxy.rb +2 -2
- data/lib/proxies/param_proxy.rb +2 -5
- data/lib/proxies/return_proxy.rb +2 -2
- data/lib/type_expression.rb +5 -4
- data/lib/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: af6b3684e92cdf1cd8276d6c06b93d7a83667fdc8ebe32590c26a992d64cfb89
|
|
4
|
+
data.tar.gz: fb341f9d4ec022a3e2aeda982a30646b44d1a2389ed5d0e473cf8d3c4846fa2b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 57df3e2a9db8a10f2008c7e7d14ff66cf24562bd80266676ad56c176277eafb76982401db097c3ce98f759fe318d5052095a55366742915c76967449ec22abfc
|
|
7
|
+
data.tar.gz: cccd7db020ccabd34684347b4e67182ac40b0425acdc23e31a99bd78369c575f2b80a8deabe6ba0c67ae900f2c775e2fe020b0097ce9147aad47aa04d5c3e858
|
data/lib/proxies/local_proxy.rb
CHANGED
|
@@ -10,12 +10,12 @@ module LowType
|
|
|
10
10
|
@name = name
|
|
11
11
|
end
|
|
12
12
|
|
|
13
|
-
def error_type
|
|
13
|
+
def error_type
|
|
14
14
|
LocalTypeError
|
|
15
15
|
end
|
|
16
16
|
|
|
17
17
|
def error_message(value:, line:)
|
|
18
|
-
"Invalid variable type #{value.class} in '#{@name.class}' on line #{line}. Valid types: '#{@type_expression.valid_types
|
|
18
|
+
"Invalid variable type #{value.class} in '#{@name.class}' on line #{line}. Valid types: '#{@type_expression.valid_types}'"
|
|
19
19
|
end
|
|
20
20
|
end
|
|
21
21
|
end
|
data/lib/proxies/param_proxy.rb
CHANGED
|
@@ -12,15 +12,12 @@ module LowType
|
|
|
12
12
|
@position = position
|
|
13
13
|
end
|
|
14
14
|
|
|
15
|
-
def error_type
|
|
16
|
-
return ArgumentError if value.nil?
|
|
15
|
+
def error_type
|
|
17
16
|
ArgumentTypeError
|
|
18
17
|
end
|
|
19
18
|
|
|
20
19
|
def error_message(value:, line: nil)
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
"Invalid argument type '#{value.class}' for parameter '#{@name}'. Valid types: '#{@type_expression.valid_types.join(', ')}'"
|
|
20
|
+
"Invalid argument type '#{value.class}' for parameter '#{@name}'. Valid types: '#{@type_expression.valid_types}'"
|
|
24
21
|
end
|
|
25
22
|
end
|
|
26
23
|
end
|
data/lib/proxies/return_proxy.rb
CHANGED
|
@@ -10,12 +10,12 @@ module LowType
|
|
|
10
10
|
@name = name
|
|
11
11
|
end
|
|
12
12
|
|
|
13
|
-
def error_type
|
|
13
|
+
def error_type
|
|
14
14
|
ReturnTypeError
|
|
15
15
|
end
|
|
16
16
|
|
|
17
17
|
def error_message(value:, line: nil)
|
|
18
|
-
"Invalid return type '#{value.class}' for method '#{@name}'. Valid types: '#{@type_expression.valid_types
|
|
18
|
+
"Invalid return type '#{value.class}' for method '#{@name}'. Valid types: '#{@type_expression.valid_types}'"
|
|
19
19
|
end
|
|
20
20
|
end
|
|
21
21
|
end
|
data/lib/type_expression.rb
CHANGED
|
@@ -30,7 +30,7 @@ module LowType
|
|
|
30
30
|
def validate!(value:, proxy:, line: nil)
|
|
31
31
|
if value.nil?
|
|
32
32
|
return true if @default_value.nil?
|
|
33
|
-
raise proxy.error_type
|
|
33
|
+
raise proxy.error_type, proxy.error_message(value:, line:) if required?
|
|
34
34
|
end
|
|
35
35
|
|
|
36
36
|
@types.each do |type|
|
|
@@ -42,13 +42,14 @@ module LowType
|
|
|
42
42
|
end
|
|
43
43
|
end
|
|
44
44
|
|
|
45
|
-
raise proxy.error_type
|
|
45
|
+
raise proxy.error_type, proxy.error_message(value:, line:)
|
|
46
46
|
end
|
|
47
47
|
|
|
48
48
|
def valid_types
|
|
49
49
|
types = @types.map { |type| type.inspect.to_s }
|
|
50
|
-
|
|
51
|
-
|
|
50
|
+
types = types + ['nil'] if @default_value.nil?
|
|
51
|
+
|
|
52
|
+
types.join(' | ')
|
|
52
53
|
end
|
|
53
54
|
end
|
|
54
55
|
end
|
data/lib/version.rb
CHANGED