struct HCL::Any
Defined in:
hcl/any.crConstructors
- .new(hsh : Hash(String, RawType))
- .new(array : Array(RawType))
-
.new(pull : JSON::PullParser)
Reads a
HCL::Any
value from the given pull parser. - .new(raw : Array(HCL::Any) | Bool | Float64 | Hash(String, HCL::Any) | Int64 | String | Nil)
Instance Method Summary
-
#==(other : Any)
Returns
true
if bothself
and other's raw object are equal. -
#==(other)
Returns
true
if the raw object is equal to other. -
#[](index : Int) : HCL::Any
Assumes the underlying value is an
Array
and returns the element at the given index. -
#[](key : String) : HCL::Any
Assumes the underlying value is a
Hash
and returns the element with the given key. -
#[]?(index : Int) : HCL::Any | Nil
Assumes the underlying value is an
Array
and returns the element at the given index, ornil
if out of bounds. -
#[]?(key : String) : HCL::Any | Nil
Assumes the underlying value is a
Hash
and returns the element with the given key, ornil
if the key is not present. -
#as_a : Array(Any)
Checks that the underlying value is
Array
, and returns its value. -
#as_a? : Array(Any) | Nil
Checks that the underlying value is
Array
, and returns its value. -
#as_bool : Bool
Checks that the underlying value is
Bool
, and returns its value. -
#as_bool? : Bool | Nil
Checks that the underlying value is
Bool
, and returns its value. -
#as_f : Float64
Checks that the underlying value is
Float
, and returns its value as anFloat64
. -
#as_f? : Float64 | Nil
Checks that the underlying value is
Float
, and returns its value as anFloat64
. -
#as_h : Hash(String, Any)
Checks that the underlying value is
Hash
, and returns its value. -
#as_h? : Hash(String, Any) | Nil
Checks that the underlying value is
Hash
, and returns its value. -
#as_i : Int64
Checks that the underlying value is
Int
, and returns its value as anInt64
. -
#as_i? : Int64 | Nil
Checks that the underlying value is
Int
, and returns its value as anInt64
. -
#as_nil : Nil
Checks that the underlying value is
Nil
, and returnsnil
. -
#as_s : String
Checks that the underlying value is
String
, and returns its value. -
#as_s? : String | Nil
Checks that the underlying value is
String
, and returns its value. - #clone
-
#dig(key : String | Int, *subkeys)
Traverses the depth of a structure and returns the value, otherwise raises.
-
#dig?(key : String | Int, *subkeys)
Traverses the depth of a structure and returns the value.
- #dup
-
#hash(hasher)
See
Object#hash(hasher)
- #raw : Array(HCL::Any) | Bool | Float64 | Hash(String, HCL::Any) | Int64 | String | Nil
- #size : Int
- #to_hcl(builder : HCL::Builder)
- #unwrap : RawType
Instance methods inherited from struct Value
==(other : HCL::Any)
==
Instance methods inherited from class Object
===(other : HCL::Any)
===
Class methods inherited from class Object
from_hcl(string_or_io : String | IO, ctx : HCL::ExpressionContext = HCL::ExpressionContext.default_context)
from_hcl
Constructor Detail
Reads a HCL::Any
value from the given pull parser.
Based on https://github.com/crystal-lang/crystal/blob/6952aacb37682558d1a976b4ebf1b1456d9f8b84/src/json/any.cr#L23
Instance Method Detail
Assumes the underlying value is an Array
and returns the element
at the given index.
Raises if the underlying value is not an Array
.
Assumes the underlying value is a Hash
and returns the element
with the given key.
Raises if the underlying value is not a Hash
.
Assumes the underlying value is an Array
and returns the element
at the given index, or nil
if out of bounds.
Raises if the underlying value is not an Array
.
Assumes the underlying value is a Hash
and returns the element
with the given key, or nil
if the key is not present.
Raises if the underlying value is not a Hash
.
Checks that the underlying value is Array
, and returns its value.
Raises otherwise.
Checks that the underlying value is Array
, and returns its value.
Returns nil
otherwise.
Checks that the underlying value is Bool
, and returns its value.
Raises otherwise.
Checks that the underlying value is Bool
, and returns its value.
Returns nil
otherwise.
Checks that the underlying value is Float
, and returns its value as an Float64
.
Raises otherwise.
Checks that the underlying value is Float
, and returns its value as an Float64
.
Returns nil
otherwise.
Checks that the underlying value is Hash
, and returns its value.
Raises otherwise.
Checks that the underlying value is Hash
, and returns its value.
Returns nil
otherwise.
Checks that the underlying value is Int
, and returns its value as an Int64
.
Raises otherwise.
Checks that the underlying value is Int
, and returns its value as an Int64
.
Returns nil
otherwise.
Checks that the underlying value is Nil
, and returns nil
.
Raises otherwise.
Checks that the underlying value is String
, and returns its value.
Raises otherwise.
Checks that the underlying value is String
, and returns its value.
Returns nil
otherwise.
Traverses the depth of a structure and returns the value, otherwise raises.
Traverses the depth of a structure and returns the value.
Returns nil
if not found.