Documentation
Value info data type and operations

Words

Tuple classes
ClassSuperclassSlots
value-info-state tupleclass interval literal literal? slots


Union classes
fixed-length


Generic words
WordStack effect
eql?( obj1 obj2 -- ? )


Symbol words
value-infos


Ordinary words
WordStack effect
(slots-with-length)( length class -- slots )
(value-info-intersect)( info1 info2 -- info )
(value-info-union)( info1 info2 -- info )
<class-info>( class -- info )
<class/interval-info>( class interval -- info )
<interval-info>( interval -- info )
<literal-info>( literal -- info )
<sequence-info>( length class -- info )
<tuple-info>( slots class -- info )
<value-info>( -- info )
>literal<( info -- literal literal? )
class-infos( classes/f -- infos )
class-interval( class -- i )
empty-set?( info -- ? )
false-class?( class -- ? )
first-literal( #call -- obj )
fix-capacity-class( class -- class' )
immutable-tuple-boa?( #call -- ? )
init-interval( info -- info )
init-literal-info( info -- info )
init-value-info( info -- info )
intersect-literals( info1 info2 -- literal literal? )
intersect-slot( info1 info2 -- info )
intersect-slots( info1 info2 -- slots )
interval>literal( class interval -- literal literal? )
last-literal( #call -- obj )
literal-class( obj -- class )
literals<=( info1 info2 -- ? )
max-value( class -- n )
min-value( class -- n )
node-input-infos( node -- seq )
node-output-infos( node -- seq )
node-value-info( node value -- info )
null-class?( class -- ? )
null-info( -- value )
object-info( -- value )
possible-boolean-values( info -- values )
refine-value-info( info value -- )
set-value-info( info value -- )
slots-with-length( seq -- slots )
slots<=( info1 info2 -- ? )
true-class?( class -- ? )
tuple-slot-infos( tuple -- slots )
union-literals( info1 info2 -- literal literal? )
union-slot( info1 info2 -- info )
union-slots( info1 info2 -- slots )
value-info( value -- info )
value-info*( value -- info ? )
value-info-intersect( info1 info2 -- info )
value-info-union( info1 info2 -- info )
value-info<=( info1 info2 -- ? )
value-infos-union( infos -- info )
value-literal( value -- obj ? )
word>input-infos( word -- input-infos/f )
wrap-interval( interval class -- interval' )


Class predicate words
WordStack effect
fixed-length?( object -- ? )
value-info-state?( object -- ? )


Files