diff --git a/basis/classes/struct/struct-docs.factor b/basis/classes/struct/struct-docs.factor index 787f03423e..031e4492a5 100644 --- a/basis/classes/struct/struct-docs.factor +++ b/basis/classes/struct/struct-docs.factor @@ -42,6 +42,11 @@ HELP: S{ { $values { "class" "a " { $link struct } " class word" } { "slots" "slot values" } } { $description "Marks the beginning of a literal struct. The syntax is identical to tuple literal syntax with " { $link POSTPONE: T{ } { $snippet " }" } "; either the assoc syntax (that is, " { $snippet "S{ class { slot value } { slot value } ... }" } ") or the simple syntax (" { $snippet "S{ class f value value ... }" } ") can be used." } ; +HELP: S@ +{ $syntax "S@ class alien" } +{ $values { "class" "a " { $link struct } " class word" } { "alien" "a literal alien" } } +{ $description "Marks the beginning of a literal struct at a specific C address. The prettyprinter uses this syntax when the memory backing a struct object is invalid. This syntax should not generally be used in source code." } ; + HELP: UNION-STRUCT: { $syntax "UNION-STRUCT: class { slot type } { slot type } ... ;" } { $values { "class" "a new " { $link struct } " class to define" } { "slots" "a list of slot specifiers" } } diff --git a/basis/prettyprint/config/config-docs.factor b/basis/prettyprint/config/config-docs.factor index dda565d5c9..1dcb1b5617 100644 --- a/basis/prettyprint/config/config-docs.factor +++ b/basis/prettyprint/config/config-docs.factor @@ -23,5 +23,8 @@ HELP: string-limit? { $var-description "Toggles whether printed strings are truncated to the margin." } ; HELP: boa-tuples? -{ $var-description "Toggles whether tuples print in BOA-form or assoc-form." } +{ $var-description "Toggles whether tuples and structs print in BOA-form or assoc-form." } { $notes "See " { $link POSTPONE: T{ } " for a description of both literal tuple forms." } ; + +HELP: c-object-pointers? +{ $var-description "Toggles whether C objects such as structs and direct arrays only print their underlying address. If this flag isn't set, C objects will attempt to print their contents. If a C object points to invalid memory, it will display only its address regardless." } ; diff --git a/basis/prettyprint/prettyprint-docs.factor b/basis/prettyprint/prettyprint-docs.factor index fbbece4602..7c114f2e22 100644 --- a/basis/prettyprint/prettyprint-docs.factor +++ b/basis/prettyprint/prettyprint-docs.factor @@ -30,6 +30,7 @@ ARTICLE: "prettyprint-variables" "Prettyprint control variables" { $subsection line-limit } { $subsection string-limit? } { $subsection boa-tuples? } +{ $subsection c-object-pointers? } "Note that the " { $link short. } " and " { $link pprint-short } " variables override some of these variables." { $warning "Treat the global variables as essentially being constants. Only ever rebind them in a nested scope."