Handbook
Glossary
wrapper
Factor handbook
»
The language
»
Collections
»
Quotations
»
Wrappers
Next:
literalize ( obj -- wrapped )
Vocabulary
kernel
Class description
The class of wrappers. Wrappers are created by calling
literalize
. See
Word syntax
for syntax.
Definition
IN:
kernel
BUILTIN:
wrapper
{
wrapped
read-only
}
;
Methods
USING:
accessors
fjsc
kernel
;
M:
wrapper
(parse-factor-quotation)
wrapped>>
[
name>>
]
[
vocabulary>>
]
bi
ast-word
boa
;
USING:
accessors
io
kernel
serialize
;
M:
wrapper
(serialize)
87
write1
wrapped>>
(serialize)
;
USING:
accessors
help.topics
kernel
;
M:
wrapper
>link
wrapped>>
>link
;
USING:
accessors
arrays
kernel
prettyprint.custom
;
M:
wrapper
>pprint-sequence
wrapped>>
1array
;
USING:
accessors
kernel
stack-checker.backend
;
M:
wrapper
apply-object
wrapped>>
push-literal
;
USING:
accessors
alien.c-types
kernel
;
M:
wrapper
c-type-string
wrapped>>
c-type-string
;
USING:
accessors
kernel
;
M:
wrapper
equal?
over
wrapper?
[
[
wrapped>>
]
same?
]
[
2drop
f
]
if
;
USING:
accessors
kernel
macros.expander
;
M:
wrapper
expand-macros*
wrapped>>
literal
;
USING:
accessors
definitions
kernel
;
M:
wrapper
forget*
wrapped>>
forget
;
USING:
kernel
quotations
;
M:
wrapper
literalize
<wrapper>
;
USING:
accessors
kernel
reports.noise
;
M:
wrapper
noise
wrapped>>
noise
;
USING:
accessors
combinators
generic
kernel
prettyprint.backend
prettyprint.custom
prettyprint.sections
words
;
M:
wrapper
pprint*
{
{
[
dup
wrapped>>
method?
]
[
wrapped>>
pprint*
]
}
{
[
dup
wrapped>>
word?
]
[
<block
\
\
pprint-word
wrapped>>
pprint-word
block>
]
}
[
pprint-object
]
}
cond
;
USING:
kernel
prettyprint.custom
;
M:
wrapper
pprint-delims
drop
\
W{
\
}
;
USING:
accessors
bootstrap.image.private
kernel
;
M:
wrapper
prepare-object
[
wrapped>>
prepare-object
wrapper
[
emit
]
emit-object
]
cache-eql-object
;
USING:
accessors
kernel
tools.crossref.private
;
M:
wrapper
quot-uses
[
wrapped>>
]
dip
quot-uses
;
USING:
accessors
alien.prettyprint.private
kernel
;
M:
wrapper
record-c-type
wrapped>>
record-c-type
;
USING:
kernel
locals.rewrite
make
;
M:
wrapper
rewrite-element
rewrite-wrapper
\
<wrapper>
,
;
USING:
accessors
kernel
locals.rewrite
;
M:
wrapper
rewrite-literal?
wrapped>>
rewrite-literal?
;
USING:
kernel
locals.rewrite
;
M:
wrapper
rewrite-sugar*
rewrite-wrapper
;