class
Crystal::ExhaustivenessChecker::BoolTarget
Overview
A bool target. Subtargets are the false and true literals.
Defined in:
compiler/crystal/semantic/exhaustiveness_checker.crInstance Method Summary
-
#add_subtargets(type_groups : Array(Array(Type)), index : Int32) : Nil
Add subtargets for the given type groups, starting at index.
-
#cover(patterns : Array(Pattern), index : Int32) : Nil
Covers this target and subsequent subtargets with the patterns starting at index.
-
#cover(pattern : Pattern) : Nil
Tries to cover this target with the given pattern.
-
#covered? : Bool
Was this target covered?
- #found_false=(found_false : Bool)
- #found_false? : Bool
- #found_true=(found_true : Bool)
- #found_true? : Bool
-
#missing_cases : Array(String)
What are the cases that we didn't cover?
-
#reject_covered! : Bool
Removes covered subtargets from this target, and returns whether this target ended up being entirely covered.
- #subtargets : Hash(Bool, Array(Target))
- #subtargets=(subtargets : Hash(Bool, Array(Target)))
- #subtargets? : Hash(Bool, Array(Target)) | Nil
Instance methods inherited from class Crystal::ExhaustivenessChecker::Target
add_subtargets(type_groups : Array(Array(Type)), index : Int32) : Nil
add_subtargets,
cover(patterns : Array(Pattern), index : Int32) : Nilcover(pattern : Pattern) : Nil cover, covered? : Bool covered?, missing_cases : Array(String) missing_cases, reject_covered! : Bool reject_covered!, type : Crystal::Type type
Constructor methods inherited from class Crystal::ExhaustivenessChecker::Target
new(type : Type)
new
Instance methods inherited from class Reference
==(other : self)==(other : JSON::Any)
==(other : YAML::Any)
==(other) ==, dup dup, hash(hasher) hash, initialize initialize, inspect(io : IO) : Nil inspect, object_id : UInt64 object_id, pretty_print(pp) : Nil pretty_print, same?(other : Reference) : Bool
same?(other : Nil) same?, to_s(io : IO) : Nil to_s
Constructor methods inherited from class Reference
new
new,
unsafe_construct(address : Pointer, *args, **opts) : self
unsafe_construct
Class methods inherited from class Reference
pre_initialize(address : Pointer)
pre_initialize
Instance methods inherited from class Object
! : Bool
!,
!=(other)
!=,
!~(other)
!~,
==(other)
==,
===(other : JSON::Any)===(other : YAML::Any)
===(other) ===, =~(other) =~, as(type : Class) as, as?(type : Class) as?, class class, dup dup, hash(hasher)
hash hash, in?(collection : Object) : Bool
in?(*values : Object) : Bool in?, inspect(io : IO) : Nil
inspect : String inspect, is_a?(type : Class) : Bool is_a?, itself itself, nil? : Bool nil?, not_nil!(message)
not_nil! not_nil!, pretty_inspect(width = 79, newline = "\n", indent = 0) : String pretty_inspect, pretty_print(pp : PrettyPrint) : Nil pretty_print, responds_to?(name : Symbol) : Bool responds_to?, tap(&) tap, to_json(io : IO) : Nil
to_json : String to_json, to_pretty_json(indent : String = " ") : String
to_pretty_json(io : IO, indent : String = " ") : Nil to_pretty_json, to_s(io : IO) : Nil
to_s : String to_s, to_yaml(io : IO) : Nil
to_yaml : String to_yaml, try(&) try, unsafe_as(type : T.class) forall T unsafe_as
Class methods inherited from class Object
from_json(string_or_io : String | IO, root : String)from_json(string_or_io : String | IO) from_json, from_yaml(string_or_io : String | IO) from_yaml
Macros inherited from class Object
class_getter(*names, &block)
class_getter,
class_getter!(*names)
class_getter!,
class_getter?(*names, &block)
class_getter?,
class_property(*names, &block)
class_property,
class_property!(*names)
class_property!,
class_property?(*names, &block)
class_property?,
class_setter(*names)
class_setter,
def_clone
def_clone,
def_equals(*fields)
def_equals,
def_equals_and_hash(*fields)
def_equals_and_hash,
def_hash(*fields)
def_hash,
delegate(*methods, to object)
delegate,
forward_missing_to(delegate)
forward_missing_to,
getter(*names, &block)
getter,
getter!(*names)
getter!,
getter?(*names, &block)
getter?,
property(*names, &block)
property,
property!(*names)
property!,
property?(*names, &block)
property?,
setter(*names)
setter
Instance Method Detail
Add subtargets for the given type groups, starting at index.
Covers this target and subsequent subtargets with the patterns starting at index.
Tries to cover this target with the given pattern. By default, a TypePattern will cover a target. Other, more specific, patterns will partially cover a target.
Was this target covered?
What are the cases that we didn't cover?
Removes covered subtargets from this target, and returns whether this target ended up being entirely covered.