USING: bootstrap.image.private byte-arrays help.markup help.syntax
-io.pathnames math quotations sequences strings words ;
+io.pathnames math quotations sequences strings vectors words ;
IN: bootstrap.image
HELP: architecture
{ $var-description "Bootstrap architecture name" } ;
+HELP: bootstrapping-image
+{ $var-description "A " { $link vector } " holding the data of the generated image. For simplicity, each element holds 'cell' number of bytes." } ;
+
HELP: define-sub-primitive
{ $values { "quot" quotation } { "word" word } }
{ $description "Defines a sub primitive by running the quotation which is supposed to output assembler code. The word is then used to call the assembly." }
HELP: jit-define
{ $values { "quot" quotation } { "n" integer } }
-{ $description "Runs a quotation generating assembly code. The code is added to the special-objects table being constructed for the bootstrap image." } ;
+{ $description "Runs a quotation generating assembly code. The code is added to the " { $link special-objects } " table being constructed for the bootstrap image." } ;
HELP: make-image
{ $values { "arch" string } }
{ $subsections make-image }
"The second bootstrapping stage is initiated by running the resulting bootstrap image:"
{ $code "./factor -i=boot.x86.32.image" }
-"This stage loads additional code, compiles all words, and dumps a final " { $snippet "factor.image" } "."
+"This stage loads additional code, compiles all words, and creates a final " { $snippet "factor.image" } "."
$nl
"The bootstrap process can be customized with command-line switches."
{ $see-also "runtime-cli-args" "bootstrap-cli-args" } ;
-! (c)Joe Groff bsd license
+! Copyright (C) Joe Groff.
+! See http://factorcode.org/license.txt for BSD license.
USING: alien classes classes.struct.private help.markup help.syntax
kernel libc math sequences ;
IN: classes.struct
$nl
"If a parameter is declared with a struct type, the parameter is passed by value. To pass a struct by reference, declare a parameter with a pointer to struct type."
$nl
+{ $heading "C functions returning structs" }
"If a C function is declared as returning a struct type, the struct is returned by value, and wrapped in an instance of the correct struct class automatically. If a C function is declared as returning a pointer to a struct, it will return an " { $link alien } " instance. This is because there is no way to distinguish between a pointer to a single struct and a pointer to an array of zero or more structs. It is up to the caller to wrap it in a struct using " { $link memory>struct } ", or a specialized array of structs using " { $snippet "<direct-T-array>" } ", respectively."
$nl
"An example of a struct declaration:"
--- /dev/null
+USING: assocs help.markup help.syntax words ;
+IN: compiler.crossref
+
+HELP: load-dependencies
+{ $values { "word" word } { "assoc" assoc } }
+{ $description "Creates an assoc where keys are the words the word depends on and values are the dependency type." } ;
HELP: +default+
{ $description "Allows a default value for a column to be provided." } ;
+HELP: +foreign-id+
+{ $description "Makes the column a foreign key, referencing a column in another table." } ;
+
HELP: +not-null+
{ $description "Ensures that a column is not null." } ;
ARTICLE: "db.types" "Database types"
"The " { $vocab-link "db.types" } " vocabulary maps Factor types to database types." $nl
-"Primary keys:"
+"Primary and foreign keys:"
{ $subsections
+db-assigned-id+
+ +foreign-id+
+user-assigned-id+
+random-id+
}
-USING: http help.markup help.syntax io.pathnames io.streams.string
-io.encodings.binary kernel urls
-urls.encoding byte-arrays strings assocs sequences destructors
-http.client.post-data.private io.encodings.8-bit.latin1 ;
+USING: assocs byte-arrays destructors help.markup help.syntax http
+http.client.post-data.private http.client.private
+io.encodings.8-bit.latin1 io.encodings.binary io.pathnames kernel
+sequences strings urls urls.encoding ;
IN: http.client
HELP: download-failed
{ $values { "request" request } { "response" response } { "data" sequence } }
{ $description "Sends an HTTP request to an HTTP server, and reads the response." } ;
+HELP: read-response-header
+{ $values { "response" response } }
+{ $description "Initializes the 'header', 'cookies', 'content-type', 'content-charset' and 'content-encoding' field of the response." } ;
+
HELP: with-http-request
{ $values { "request" request } { "quot" { $quotation ( chunk -- ) } } { "response" response } }
{ $description "A variant of " { $link with-http-request* } " that checks that the response was successful." } ;
HELP: <request>
{ $values { "request" request } }
-{ $description "Creates an empty request." } ;
+{ $description "Creates an empty request containing default headers." } ;
HELP: request
{ $description "An HTTP request."
HELP: <response>
{ $values { "response" response } }
-{ $description "Creates an empty response." } ;
+{ $description "Creates an empty response containing default headers." } ;
HELP: response
{ $class-description "An HTTP response."
--- /dev/null
+USING: assocs help.markup help.syntax strings ;
+IN: tools.deploy.backend
+
+HELP: make-deploy-image
+{ $values
+ { "vm" string }
+ { "image" string }
+ { "vocab" string }
+ { "config" assoc }
+ { "manifest" string }
+} { $description "" } ;
+
+HELP: make-boot-image
+{ $description "If stage1 image doesn't exist, create it." } ;
{ $heading "Advanced deploy options" }
"There are some flags which may reduce deployed application size in trivial or specialized applications. These settings cannot usually be changed from their defaults and still produce a working application. These settings are not available from the deploy tool UI and must be set by manually editing a vocabulary's " { $snippet "deploy.factor" } " file."
{ $subsections
- deploy-math?
- deploy-threads?
- deploy-io
+ deploy-help?
+ deploy-math?
+ deploy-threads?
+ deploy-io
} ;
ABOUT: "deploy-flags"
}
"If your program looks up C types dynamically or from words which do not have a stack effect, you must enable this flag, because in these situations the C type lookup code is not folded away and the word properties must be consulted at runtime." } ;
+HELP: deploy-help?
+{ $description "Deploy flag. If set, the deployed image will contain documentation for all included words." } ;
+
HELP: deploy-math?
{ $description "Deploy flag. If set, the deployed image will contain support for " { $link ratio } " and " { $link complex } " types."
$nl
"On by default."
{ $warning "It is unlikely that math support can be safely removed in most nontrivial applications because the library makes extensive use of ratios." } } ;
-HELP: deploy-unicode?
-{ $description "Deploy flag. If set, full Unicode " { $link POSTPONE: CHAR: } " syntax is included."
-$nl
-"Off by default. If your program needs to use " { $link POSTPONE: CHAR: } " with named characters, enable this flag." } ;
-
HELP: deploy-threads?
{ $description "Deploy flag. If set, thread support will be included in the final image."
$nl
$nl
"Off by default. Programs wishing to use the UI must be deployed with this flag on." } ;
+HELP: deploy-unicode?
+{ $description "Deploy flag. If set, full Unicode " { $link POSTPONE: CHAR: } " syntax is included."
+$nl
+"Off by default. If your program needs to use " { $link POSTPONE: CHAR: } " with named characters, enable this flag." } ;
+
HELP: deploy-console?
{ $description "Deploy flag. If set, the deployed executable will be configured as a console application. On Windows, this means the application will be deployed in the console subsystem and will be attached to a console window. On Mac OS X, this means the application will be deployed as a Unix executable instead of a Mac application bundle. On other Unix platforms, the flag has no effect."
$nl
! (c)2010 Joe Groff bsd license
-USING: arrays calendar help.markup help.syntax kernel math
-quotations threads words ;
+USING: arrays calendar help.markup help.syntax math quotations threads
+tools.profiler.sampling.private ;
IN: tools.profiler.sampling
{ cross-section flat top-down top-down-max-depth profile profile. } related-words
}
{ $description "Formats and prints a profile report generated by " { $link top-down } ", " { $link top-down-max-depth } ", " { $link cross-section } ", or " { $link flat } "." } ;
+HELP: raw-profile-data
+{ $var-description "Holds raw profiling data. Set by the " { $link profile } " word after the profiling run is over." } ;
+
HELP: sample-callstack
{ $values
{ "sample" "a raw profile sample" }
USING: alien byte-arrays gdk.ffi gtk.ffi help.markup help.syntax
-kernel ;
+kernel strings ui.backend.x11.keys ;
IN: ui.backend.gtk
HELP: configure-im
HELP: icon-data
{ $var-description "Contains a " { $link byte-array } " or " { $link f } " which is the data for the icon to be used for gtk windows. The variable is updated to contain a vocab-specific icon when deploying. See " { $link "vocabs.icons" } " and 'tools.deploy.shaker.strip-gtk-icon'." } ;
+HELP: key-sym
+{ $values
+ { "event" GdkEventKey }
+ { "sym/f" { $maybe string } }
+ { "action?" boolean }
+} { $description "Gets the key symbol and action indicator from a " { $link GdkEventKey } " struct. If 'action?' is " { $link t } ", then the key is one of the special keys in " { $link codes } "." } ;
+
HELP: on-configure
{ $values
{ "win" alien }
{ "?" boolean }
}
{ $description "Handles a configure event (" { $link GdkEventConfigure } " sent from the windowing system. If the world has been sent the on-map event from gtk then it is relayouted, otherwise nothing happens." } ;
+
+ARTICLE: "ui.backend.gtk" "Gtk-based UI backend"
+"GDK Event handlers:"
+{ $list
+ { "Focus events:"
+ { $subsections
+ on-focus-in
+ on-focus-out
+ on-leave
+ }
+ }
+ { "IM events:"
+ { $subsections
+ im-on-destroy
+ im-on-focus-in
+ im-on-focus-out
+ im-on-key-event
+ on-commit
+ on-delete-surrounding
+ on-retrieve-surrounding
+ }
+ }
+ { "Keyboard events:"
+ { $subsections
+ on-key-press/release
+ }
+ }
+ { "Mouse events:"
+ { $subsections
+ on-button-press
+ on-button-release
+ on-motion
+ on-scroll
+ }
+ }
+ { "Window sizing and visibility events:"
+ { $subsections
+ on-configure
+ on-delete
+ on-expose
+ on-map
+ }
+ }
+} ;
+
+ABOUT: "ui.backend.gtk"
USING: alien arrays classes combinators help.markup help.syntax
-kernel.private layouts math quotations system words ;
+kernel.private layouts math quotations system threads words ;
IN: kernel
HELP: JIT-PUSH-LITERAL
HELP: OBJ-UNDEFINED
{ $description "Default definition for undefined words" } ;
+HELP: OBJ-CURRENT-THREAD
+{ $description "Contains a reference to the running " { $link thread } " instance." } ;
+
HELP: WIN-EXCEPTION-HANDLER
{ $description "This special object is an " { $link alien } " containing a pointer to the processes global exception handler. Only applicable on " { $link windows } "." } ;