module YAML::Schema::Core
Overview
Provides utility methods for the YAML 1.1 core schema with the additional independent types specified in http://yaml.org/type/
Defined in:
yaml/schema/core.crClass Method Summary
-
.each(node : YAML::Nodes::Mapping, &)
Invokes the block for each of the given nodes keys and values, resolving merge keys (<<) when found (keys and values of the resolved merge mappings are yielded, recursively).
-
.parse(data : String | IO) : YAML::Any
Deserializes a YAML document.
-
.parse_all(data : String | IO) : Array(YAML::Any)
Deserializes multiple YAML documents.
-
.parse_int(node : Nodes::Node, type : T.class) : T forall T
Parses an integer of the given type according to the core schema.
-
.parse_null?(node : Nodes::Node)
Returns
true
if node parses to a null value. -
.parse_null_or(node : YAML::Nodes::Node, &)
If
node
parses to a null value, returnsnil
, otherwise invokes the given block. -
.parse_scalar(pull_parser : YAML::PullParser) : Nil | Bool | Int64 | Float64 | String | Time | Bytes
Assuming the pull_parser is positioned in a scalar, parses it according to the core schema, taking the scalar's style and tag into account, then advances the pull parser.
-
.parse_scalar(string : String) : Nil | Bool | Int64 | Float64 | String | Time | Bytes
Parses a string according to the core schema, assuming the string had a plain style.
-
.parse_scalar(node : YAML::Nodes::Scalar) : Nil | Bool | Int64 | Float64 | String | Time | Bytes
Parses a scalar value from the given node.
-
.reserved_string?(string) : Bool
Returns whether a string is reserved and must non be output with a plain style, according to the core schema.
Class Method Detail
Invokes the block for each of the given nodes keys and values, resolving merge keys (<<) when found (keys and values of the resolved merge mappings are yielded, recursively).
Deserializes a YAML document.
Same as YAML.parse
.
Deserializes multiple YAML documents.
Same as YAML.parse_all
.
Parses an integer of the given type according to the core schema.
type must be a primitive integer type. Raises YAML::ParseException
if
node is not a valid integer or its value is outside type's range.
If node
parses to a null value, returns nil
, otherwise
invokes the given block.
Assuming the pull_parser is positioned in a scalar, parses it according to the core schema, taking the scalar's style and tag into account, then advances the pull parser.
Parses a string according to the core schema, assuming the string had a plain style.
require "yaml"
YAML::Schema::Core.parse_scalar("hello") # => "hello"
YAML::Schema::Core.parse_scalar("1.2") # => 1.2
YAML::Schema::Core.parse_scalar("false") # => false
Parses a scalar value from the given node.
Returns whether a string is reserved and must non be output with a plain style, according to the core schema.
require "yaml"
YAML::Schema::Core.reserved_string?("hello") # => false
YAML::Schema::Core.reserved_string?("1.2") # => true
YAML::Schema::Core.reserved_string?("false") # => true