Handbook
Glossary
(define-enum-class) ( class superclass member-assoc -- )
Vocabulary
classes
.
enumeration
.
private
Inputs
class
an
object
superclass
an
object
member-assoc
an
object
Outputs
None
Definition
USING:
assocs
classes
classes.enumeration
classes.private
combinators
kernel
sequences
words
;
IN:
classes.enumeration.private
:
(define-enum-class)
( class superclass member-assoc -- )
dup
-rotd
[
values
index
>boolean
]
curry
{
[
drop
pick
verify-types
drop
]
[
drop
f
f
enumeration-class
define-class
]
[
nip
"predicate-definition"
set-word-prop
]
[
2drop
swap
"enum-member-assoc"
set-word-prop
]
[
nip
[
define-predicate
]
keepd
update-classes
]
}
3cleave
;