constrain 0.5.0 → 0.5.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/README.md +8 -8
- data/lib/constrain/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: c3983b4e793cdb6dce194d422e4ac27a0781fc4d4956383cb758444100923dc5
|
4
|
+
data.tar.gz: '06029816512b72fca6993cee9dd7fce0a165a5e03d1e7d7292df277dd8cea1bd'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: aab2f97456b574a849e5b130f4af473efd755a89a844207f057e10722a32dc664915a1c5e4ed3d03140adec0ddb5cfa7ea15d1fadc9681ec65d4a46d6288de99
|
7
|
+
data.tar.gz: 2f8c4cfe16ae3712aaedab413b5235764a03e6b89dfcb6946d01abbf739537ed0b4d55dde0728e7a58d0569ff6b99e79cb1daec5b6229cd436015d3f20e27d5d
|
data/README.md
CHANGED
@@ -47,16 +47,17 @@ have it available in all child classes
|
|
47
47
|
|
48
48
|
## Methods
|
49
49
|
|
50
|
-
#### constrain(value, \*expressions, message
|
50
|
+
#### constrain(value, \*expressions, message: nil, unwind: 0)
|
51
51
|
|
52
52
|
Return the given value if it matches at least one of the expressions and raise a
|
53
53
|
Constrain::TypeError if not. The value is matched against the expressions using
|
54
54
|
the #=== operator so anything you can put into the 'when' clause of a 'case'
|
55
55
|
statement can be used. #constrain raise a Constrain::MatchError if the value
|
56
|
-
doesn't match any expression
|
56
|
+
doesn't match any expression and an ArgumentError if there is a syntax error in
|
57
|
+
the expression
|
57
58
|
|
58
|
-
The error message can be customized by
|
59
|
-
of backtrace leves can be skipped
|
59
|
+
The error message can be customized by adding the message option and a number
|
60
|
+
of backtrace leves can be skipped using the :unwind option. By default the
|
60
61
|
backtrace will refer to the point of the call of \#constrain. \#constrain
|
61
62
|
raises a Constrain::Error exception if there is an error in the syntax of the
|
62
63
|
class expression
|
@@ -65,9 +66,8 @@ class expression
|
|
65
66
|
want an exception if the parameters doesn't match the expected, but because it
|
66
67
|
returns the value if successful it can be used to check the validity of
|
67
68
|
variables in expressions too, eg. `return constrain(result_of_complex_computation, Integer)`
|
68
|
-
to check the return value of a method
|
69
69
|
|
70
|
-
#### Constrain.constrain(value, \*expressions, message
|
70
|
+
#### Constrain.constrain(value, \*expressions, message: nil, unwind: 0)
|
71
71
|
|
72
72
|
Class method version of #constrain. It is automatically added to classes that
|
73
73
|
include Constrain
|
@@ -77,8 +77,8 @@ include Constrain
|
|
77
77
|
|
78
78
|
It matches value against the class expressions like #constrain but returns true
|
79
79
|
or false as result. It is automatically added to classes that include
|
80
|
-
Constrain. Constrain.constrain? raises a
|
81
|
-
is an error in the syntax of the
|
80
|
+
Constrain. Constrain.constrain? raises a ArgumentError exception if there
|
81
|
+
is an error in the syntax of the expression
|
82
82
|
|
83
83
|
|
84
84
|
## Expressions
|
data/lib/constrain/version.rb
CHANGED