Typing

abstract
class Typing[Key, Value, Err, Evidence]
Companion
object
class Object
trait Matchable
class Any
class TypingMap[Key, Value, Err, Evidence]

Type members

Types

type Evidences = List[Evidence]
type SimpleSeq = Seq[(Key, Either[Value, Value])]

Value members

Abstract methods

def addEvidence(key: Key, value: Value, es: Evidence): Typing[Key, Value, Err, Evidence]
def addEvidences(key: Key, value: Value, es: List[Evidence]): Typing[Key, Value, Err, Evidence]
def addNotEvidence(key: Key, value: Value, e: Err): Typing[Key, Value, Err, Evidence]
def allOk: Boolean
def combineTyping(t: Typing[Key, Value, Err, Evidence]): Typing[Key, Value, Err, Evidence]
def getEvidences(key: Key, value: Value): Option[List[Evidence]]
def getFailed: List[Key]
def getFailedValues(key: Key): Set[Value]
def getKeys: Seq[Key]
def getMap: Map[Key, Map[Value, TypingResult[Err, Evidence]]]
def getOkValues(key: Key): Set[Value]
def getValues(key: Key): Map[Value, TypingResult[Err, Evidence]]
def negateValuesWith(cond: Value => Boolean, err: Err): Typing[Key, Value, Err, Evidence]
def removeValue(key: Key, value: Value): Typing[Key, Value, Err, Evidence]
def removeValuesWith(cond: Value => Boolean): Typing[Key, Value, Err, Evidence]

Concrete methods

def addType(key: Key, value: Value, evidences: List[Evidence]): Typing[Key, Value, Err, Evidence]
def hasType(key: Key, value: Value): Boolean