class

Heucristic::Resolve::Narrowing

Inherits Reference < Object

Constants

FALSEY = {CoreType::Nil, CoreType::Bool, CoreType::Pointer}

Constructors

new(types : Types, methods : Methods, unions : Unions)
Source

Class methods

assigning?(step : Flow::Step) : Bool
Source

Instance methods

apply(current : Resolution, step : Flow::Truthy | Flow::IsA | Flow::RespondsTo, context : Syntax::Context) : Resolution
Source
falsey(current : Resolution) : Resolution
Source
responding(current : Resolution, method : String, positive : Bool, context : Syntax::Context) : Resolution
Source
truthy(current : Resolution) : Resolution
Source
typed_as(current : Resolution, types : Array(Crystal::ASTNode), positive : Bool, context : Syntax::Context) : Resolution
Source