Navigation
|
Synopsis The least-upperbound (lub) between two types.
Function -
Symbol lub(Symbol s, s)
-
default Symbol lub(Symbol s, Symbol t)
-
Symbol lub(\value(), Symbol t)
-
Symbol lub(Symbol s, \value())
-
Symbol lub(\void(), Symbol t)
-
Symbol lub(Symbol s, \void())
-
Symbol lub(\int(), \num())
-
Symbol lub(\int(), \real())
-
Symbol lub(\int(), \rat())
-
Symbol lub(\rat(), \num())
-
Symbol lub(\rat(), \real())
-
Symbol lub(\rat(), \int())
-
Symbol lub(\real(), \num())
-
Symbol lub(\real(), \int())
-
Symbol lub(\real(), \rat())
-
Symbol lub(\num(), \int())
-
Symbol lub(\num(), \real())
-
Symbol lub(\num(), \rat())
-
Symbol lub(\set(Symbol s), \set(Symbol t))
-
Symbol lub(\set(Symbol s), \rel(list[Symbol] ts))
-
Symbol lub(\rel(list[Symbol] ts), \set(Symbol s))
-
Symbol lub(\rel(list[Symbol] l), \rel(list[Symbol] r))
-
Symbol lub(\rel(list[Symbol] l), \rel(list[Symbol] r))
-
Symbol lub(\rel(list[Symbol] l), \rel(list[Symbol] r))
-
Symbol lub(\rel(list[Symbol] l), \rel(list[Symbol] r))
-
Symbol lub(\rel(list[Symbol] l), \rel(list[Symbol] r))
-
Symbol lub(\rel(list[Symbol] l), \rel(list[Symbol] r))
-
Symbol lub(\list(Symbol s), \list(Symbol t))
-
Symbol lub(\list(Symbol s), \lrel(list[Symbol] ts))
-
Symbol lub(\lrel(list[Symbol] ts), \list(Symbol s))
-
Symbol lub(\lrel(list[Symbol] l), \lrel(list[Symbol] r))
-
Symbol lub(\lrel(list[Symbol] l), \lrel(list[Symbol] r))
-
Symbol lub(\lrel(list[Symbol] l), \lrel(list[Symbol] r))
-
Symbol lub(\lrel(list[Symbol] l), \lrel(list[Symbol] r))
-
Symbol lub(\lrel(list[Symbol] l), \lrel(list[Symbol] r))
-
Symbol lub(\lrel(list[Symbol] l), \lrel(list[Symbol] r))
-
Symbol lub(\tuple(list[Symbol] l), \tuple(list[Symbol] r))
-
Symbol lub(\tuple(list[Symbol] l), \tuple(list[Symbol] r))
-
Symbol lub(\tuple(list[Symbol] l), \tuple(list[Symbol] r))
-
Symbol lub(\tuple(list[Symbol] l), \tuple(list[Symbol] r))
-
Symbol lub(\tuple(list[Symbol] l), \tuple(list[Symbol] r))
-
Symbol lub(\map(\label(str lfl, Symbol lf), \label(str ltl, Symbol lt)), \map(\label(str rfl, Symbol rf), \label(str rtl, Symbol rt)))
-
Symbol lub(\map(\label(str lfl, Symbol lf), \label(str ltl, Symbol lt)), \map(\label(str rfl, Symbol rf), \label(str rtl, Symbol rt)))
-
Symbol lub(\map(\label(str lfl, Symbol lf), \label(str ltl, Symbol lt)), \map(Symbol rf, Symbol rt))
-
Symbol lub(\map(Symbol lf, Symbol lt), \map(\label(str rfl, Symbol rf), \label(str rtl, Symbol rt)))
-
Symbol lub(\map(Symbol lf, Symbol lt), \map(Symbol rf, Symbol rt))
-
Symbol lub(\bag(Symbol s), \bag(Symbol t))
-
Symbol lub(\adt(str n, list[Symbol] _), \node())
-
Symbol lub(\node(), \adt(str n, list[Symbol] _))
-
Symbol lub(\adt(str n, list[Symbol] lp), \adt(n, list[Symbol] rp))
-
Symbol lub(\adt(str n, list[Symbol] lp), \adt(n, list[Symbol] rp))
-
Symbol lub(\adt(str n, list[Symbol] lp), \adt(str m, list[Symbol] rp))
-
Symbol lub(\adt(str ln, list[Symbol] lp), Symbol::\cons(Symbol b, _, list[Symbol] _))
-
Symbol lub(Symbol::\cons(Symbol la, _, list[Symbol] _), Symbol::\cons(Symbol ra, _, list[Symbol] _))
-
Symbol lub(Symbol::\cons(Symbol a, _, list[Symbol] lp), \adt(str n, list[Symbol] rp))
-
Symbol lub(Symbol::\cons(Symbol _, _, list[Symbol] _), \node())
-
Symbol lub(\alias(str _, list[Symbol] _, Symbol aliased), Symbol r)
-
Symbol lub(Symbol l, \alias(str _, list[Symbol] _, Symbol aliased))
-
Symbol lub(\parameter(str _, Symbol bound), Symbol r)
-
Symbol lub(Symbol l, \parameter(str _, Symbol bound))
-
Symbol lub(\reified(Symbol l), \reified(Symbol r))
-
Symbol lub(\reified(Symbol l), \node())
-
Symbol lub(Symbol::\func(Symbol lr, list[Symbol] lp), Symbol::\func(Symbol rr, list[Symbol] rp))
-
Symbol lub(\label(_,Symbol l), Symbol r)
-
Symbol lub(Symbol l, \label(_,Symbol r))
-
list[Symbol] lub(list[Symbol] l, list[Symbol] r)
-
default list[Symbol] lub(list[Symbol] l, list[Symbol] r)
Usage import Type;
Description This function documents and implements the lub operation in Rascal's type system.
|