struct Novika::Resolver::Response

Overview

A mutable response object which is tightly coupled to Session, designed for reuse throughout multiple (rounds of) queries to the latter.

Included Modules

Defined in:

novika/resolver.cr

Constructors

Instance Method Summary

Instance methods inherited from module Novika::Resolver::SignalReceiver

receive(signal : Signal) receive

Constructor Detail

def self.new #

Instance Method Detail

def accepted_set : ResolutionSet #

Joins all accepted resolution sets of this response into one large resolution set, and returns it. Does not distinguish between queried-for and wished resolution sets.

See AcceptionRoute to learn about the difference between queried-for and wished routes of set acception.


def drop_wish(& : RunnableQuery -> ) #

Yields wishes from this response's wishlist, then clears the wishlist (so that this response can perhaps be reused).


def each_ignored_runnable(& : Runnable -> ) #

Yields runnables that were ignored.


def each_rejected_runnable(& : Runnable -> ) #

Yields runnables that were rejected.


def queried_for_set : ResolutionSet #

Joins all queried-for accepted resolution sets of this response into one large resolution set, and returns it.

See AcceptionRoute to learn about the difference between queried-for and wished routes of set acception.


def receive(signal : Signal) #
Description copied from module Novika::Resolver::SignalReceiver

Receives and reacts to a signal sent by RunnableRoot.


def successful? : Bool #

Returns whether this response is successful, in that it has no rejected runnables.


def wishless? : Bool #

Returns true if this response does not "wish" to make any more queries before its accepted sets can be inspected.