diff --git a/extra/python/errors/errors-docs.factor b/extra/python/errors/errors-docs.factor index cb80e66aa0..49a35a6f50 100644 --- a/extra/python/errors/errors-docs.factor +++ b/extra/python/errors/errors-docs.factor @@ -1,27 +1,32 @@ +USING: math help.markup help.syntax ; IN: python.errors -USING: python.errors help.markup help.syntax ; HELP: check-zero +{ $values { "code" integer } } { $description "Verifies that the return code is 0 and throws an error otherwise." } ; HELP: (check-ref) +{ $values { "ref" "a python object" } } { $description "Verifies that the reference is not f and throws an error if it is." } ; HELP: check-new-ref +{ $values { "ref" "a python object" } } { $description "Adds reference counting to the returned python object which is assumed to be a new reference. An error is thrown if the object is f. This word is used to wrap Python functions that return new references." } ; HELP: check-borrowed-ref +{ $values { "ref" "a python object" } } { $description "Adds reference counting to the returned python object which is assumed to be a borrowed reference. An error is thrown if the object is f. This word is used to wrap Python functions that return borrowed references." } ; HELP: unsteal-ref +{ $values { "ref" "a python object" } } { $description "Increases the objects reference count. Used by wrappers that call Python functions that steal references." } ; diff --git a/extra/python/errors/errors.factor b/extra/python/errors/errors.factor index 4107a635ec..c60b155ccb 100644 --- a/extra/python/errors/errors.factor +++ b/extra/python/errors/errors.factor @@ -14,17 +14,17 @@ ERROR: python-error type message ; PRIVATE> -: (check-ref) ( ref -- ref' ) +: (check-ref) ( ref -- ref ) [ get-error throw-error f ] unless* ; -: check-new-ref ( ref -- ref' ) +: check-new-ref ( ref -- ref ) &Py_DecRef (check-ref) ; -: check-borrowed-ref ( ref -- ref' ) +: check-borrowed-ref ( ref -- ref ) dup Py_IncRef &Py_DecRef (check-ref) ; : check-zero ( code -- ) 0 = [ get-error throw-error ] unless ; -: unsteal-ref ( ref -- ref' ) +: unsteal-ref ( ref -- ref ) dup Py_IncRef ; diff --git a/extra/python/python-docs.factor b/extra/python/python-docs.factor index dcb320b394..a32bbe5043 100644 --- a/extra/python/python-docs.factor +++ b/extra/python/python-docs.factor @@ -12,7 +12,7 @@ HELP: >py { $description "Converts a factor objects to its most fitting python representation." } { $examples { $example - "USING: python ;" + "USING: arrays prettyprint python sequences ;" "10 iota >array >py py> ." "{ 0 1 2 3 4 5 6 7 8 9 }" }