Module: Luoma::Predicates
- Defined in:
- lib/luoma/predicates/type.rb,
lib/luoma/predicates/blank.rb,
lib/luoma/predicates/empty.rb,
lib/luoma/predicates/defined.rb,
sig/luoma/predicates/type.rbs,
sig/luoma/predicates/blank.rbs,
sig/luoma/predicates/empty.rbs,
sig/luoma/predicates/defined.rbs
Class Method Summary collapse
-
.array?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool.
-
.blank?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool.
-
.defined?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool.
-
.empty?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool.
-
.null?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool.
-
.number?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool.
-
.numeric?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool.
-
.object?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool.
-
.string?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool.
Class Method Details
.array?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool
21 22 23 |
# File 'lib/luoma/predicates/type.rb', line 21 def self.array?(context, obj) obj.is_a?(Array) end |
.blank?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool
6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/luoma/predicates/blank.rb', line 6 def self.blank?(context, obj) case obj when nil true when String obj.strip == "" when Array, Hash obj.empty? else obj.respond_to?(:length) ? obj.length.zero? : false # rubocop:disable Style/ZeroLengthPredicate end end |
.defined?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool
6 7 8 |
# File 'lib/luoma/predicates/defined.rb', line 6 def self.defined?(context, obj) !(obj == :nothing || obj.is_a?(UndefinedDrop)) end |
.empty?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool
6 7 8 9 10 11 12 13 |
# File 'lib/luoma/predicates/empty.rb', line 6 def self.empty?(context, obj) case obj when Array, Hash, String obj.empty? else obj.respond_to?(:length) ? obj.length.zero? : false # rubocop:disable Style/ZeroLengthPredicate end end |
.null?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool
6 7 8 |
# File 'lib/luoma/predicates/type.rb', line 6 def self.null?(context, obj) obj.nil? end |
.number?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool
16 17 18 |
# File 'lib/luoma/predicates/type.rb', line 16 def self.number?(context, obj) obj.is_a?(Numeric) end |
.numeric?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool
31 32 33 |
# File 'lib/luoma/predicates/type.rb', line 31 def self.numeric?(context, obj) obj.is_a?(Numeric) || (context.env.to_numeric(obj, context) != :nothing) end |
.object?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool
26 27 28 |
# File 'lib/luoma/predicates/type.rb', line 26 def self.object?(context, obj) obj.is_a?(Hash) end |
.string?(context, obj) ⇒ Boolean
(RenderContext, untyped) -> bool
11 12 13 |
# File 'lib/luoma/predicates/type.rb', line 11 def self.string?(context, obj) obj.is_a?(String) end |