rschema 2.4.0 → 3.0.1.pre1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +408 -197
- data/lib/rschema.rb +26 -367
- data/lib/rschema/dsl.rb +103 -0
- data/lib/rschema/error.rb +46 -0
- data/lib/rschema/http_coercer.rb +177 -0
- data/lib/rschema/options.rb +15 -0
- data/lib/rschema/result.rb +39 -0
- data/lib/rschema/schemas/anything.rb +17 -0
- data/lib/rschema/schemas/boolean.rb +27 -0
- data/lib/rschema/schemas/enum.rb +31 -0
- data/lib/rschema/schemas/fixed_hash.rb +118 -0
- data/lib/rschema/schemas/fixed_length_array.rb +60 -0
- data/lib/rschema/schemas/maybe.rb +23 -0
- data/lib/rschema/schemas/pipeline.rb +27 -0
- data/lib/rschema/schemas/predicate.rb +27 -0
- data/lib/rschema/schemas/set.rb +56 -0
- data/lib/rschema/schemas/sum.rb +36 -0
- data/lib/rschema/schemas/type.rb +27 -0
- data/lib/rschema/schemas/variable_hash.rb +67 -0
- data/lib/rschema/schemas/variable_length_array.rb +49 -0
- data/lib/rschema/version.rb +1 -1
- metadata +27 -10
- data/lib/rschema/rails_interop.rb +0 -19
@@ -1,19 +0,0 @@
|
|
1
|
-
module RSchema
|
2
|
-
module RailsInterop
|
3
|
-
ParamSchemaValidationError = Class.new(StandardError)
|
4
|
-
|
5
|
-
module ControllerMethods
|
6
|
-
def params_for_schema!(schema_arg = nil, &block)
|
7
|
-
schema = schema_arg || RSchema.schema(&block)
|
8
|
-
value = self.params
|
9
|
-
coerced, error = RSchema.coerce(schema, value)
|
10
|
-
if error
|
11
|
-
raise ParamSchemaValidationError.new(schema: schema, params: value, error: e)
|
12
|
-
else
|
13
|
-
coerced
|
14
|
-
end
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
end
|
19
|
-
end
|