module Steep::Subtyping::Result::Helper

def All(relation, &block)

def All(relation, &block)
  All.new(relation).tap(&block)
end

def Any(relation, &block)

def Any(relation, &block)
  Any.new(relation).tap(&block)
end

def Expand(relation, &block)

def Expand(relation, &block)
  Expand.new(relation, &block)
end

def Failure(relation, error = nil)

def Failure(relation, error = nil)
  Failure.new(relation, error || yield)
end

def Skip(relation)

def Skip(relation)
  Skip.new(relation)
end

def Success(relation)

def Success(relation)
  Success.new(relation)
end