diff -rNu smalltalk-3.0.3/ChangeLog smalltalk-3.0.4/ChangeLog --- smalltalk-3.0.3/ChangeLog 2008-05-14 12:02:32.000000000 +0200 +++ smalltalk-3.0.4/ChangeLog 2008-08-09 15:09:44.000000000 +0200 @@ -1,3 +1,88 @@ +2008-08-04 Paolo Bonzini + + * kernel/Semaphore.st: Initialize the caught variable in #critical:. + +2008-08-01 Paolo Bonzini + + * kernel/Stream.st: Fix #do: and #linesDo: to check for the + right stream before bailing out. + * tests/strings.st: Add regression test. + * tests/strings.ok: Regenerate. + +2008-07-28 Paolo Bonzini + + * tests/compiler.st: Add tests for parsing unary minus. + * tests/compiler.ok: Regenerate. + +2008-07-14 Paolo Bonzini + + * kernel/CompildCode.st: Fix printing of superoperators including + JUMP_BACK. + +2008-07-14 Paolo Bonzini + + * tests/compiler.st: Add testcase. + * tests/compiler.ok: Regenerate. + +2008-07-10 Paolo Bonzini + + * kernel/MappedColl.st: Forward #keysDo: to the map, don't + change it to #do:. + +2008-06-01 Paolo Bonzini + + * kernel/AnsiExcept.st: Adjust call to #instantiateNextHandler:. + * kernel/ExcHandling.st: Scan for outer exception handlers from the + handler's context. + * tests/exceptions.st: Add test case. + * tests/exceptions.ok: Regenerate. + +2008-06-01 Paolo Bonzini + + * kernel/URL.st: Fix redirects including a GET query. + Add #contents and #readStream. + +2008-05-31 Daniele Sciascia + + * scripts/Convert.st: --quiet was verbose. + +2008-05-30 Paolo Bonzini + + * gst-tool.c: Remove executable extension if present. + +2008-05-30 Paolo Bonzini + + * kernel/CObject.st: Fix CByte. + +2008-05-27 Paolo Bonzini + + * kernel/SeqCollect.st: Move #join... + * kernel/Collection.st: ... here. Use #anyOne. + +2008-05-24 Paolo Bonzini + + * kernel/VFSZip.st: Avoid leaking file descriptors for LimitedStreams. + +2008-05-22 Paolo Bonzini + + * kernel/ArrayColl.st: Remove implementation of #gather:. + * kernel/Collection.st: Implement #gather: in terms of #join. + +2008-05-22 Paolo Bonzini + + * kernel/VFS.st: Fix #all on archives. + +2008-05-22 Paolo Bonzini + + * kernel/OrderColl.st: Override #first and #last for speed. + * kernel/StreamOps.st: Avoid repeatedly colling #first. + * kernel/SeqCollect.st: Use #replaceFrom:to:with:startingAt: when doing + #replaceFrom:to:with: with a sequenceable collection argument. + +2008-05-15 Paolo Bonzini + + * kernel/File.st: Deal correctly with UNC paths. + 2008-05-11 Paolo Bonzini * examples/xml.sed: Fix for VW7. diff -rNu smalltalk-3.0.3/Makefile.am smalltalk-3.0.4/Makefile.am --- smalltalk-3.0.3/Makefile.am 2008-05-14 12:02:32.000000000 +0200 +++ smalltalk-3.0.4/Makefile.am 2008-08-09 15:09:44.000000000 +0200 @@ -127,7 +127,7 @@ done install-exec-hook:: - $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL) gst-tool "$(DESTDIR)$(bindir)/gst-load" + $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL) gst-tool$(EXEEXT) "$(DESTDIR)$(bindir)/gst-load$(EXEEXT)" @for i in $(GST_EXTRA_TOOLS); do \ echo $(LN) -f "$(DESTDIR)$(bindir)/gst-load$(EXEEXT)" "$(DESTDIR)$(bindir)/$$i$(EXEEXT)"; \ $(LN) -f "$(DESTDIR)$(bindir)/gst-load$(EXEEXT)" "$(DESTDIR)$(bindir)/$$i$(EXEEXT)"; \ diff -rNu smalltalk-3.0.3/Makefile.in smalltalk-3.0.4/Makefile.in --- smalltalk-3.0.3/Makefile.in 2008-05-14 12:04:51.000000000 +0200 +++ smalltalk-3.0.4/Makefile.in 2008-08-09 15:13:16.000000000 +0200 @@ -1121,7 +1121,7 @@ done install-exec-hook:: - $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL) gst-tool "$(DESTDIR)$(bindir)/gst-load" + $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL) gst-tool$(EXEEXT) "$(DESTDIR)$(bindir)/gst-load$(EXEEXT)" @for i in $(GST_EXTRA_TOOLS); do \ echo $(LN) -f "$(DESTDIR)$(bindir)/gst-load$(EXEEXT)" "$(DESTDIR)$(bindir)/$$i$(EXEEXT)"; \ $(LN) -f "$(DESTDIR)$(bindir)/gst-load$(EXEEXT)" "$(DESTDIR)$(bindir)/$$i$(EXEEXT)"; \ diff -rNu smalltalk-3.0.3/NEWS smalltalk-3.0.4/NEWS --- smalltalk-3.0.3/NEWS 2008-05-14 12:02:32.000000000 +0200 +++ smalltalk-3.0.4/NEWS 2008-08-09 15:09:45.000000000 +0200 @@ -1,5 +1,60 @@ List of user-visible changes in GNU Smalltalk +NEWS FROM 3.0.3 TO 3.0.4 + +o A few operations on collections have been sped up. + +o Code without a space between a binary minus and a number, such as "a-2", + is parsed correctly. As a side effect of this change, the sign of a number + with an explicit radix (such as "16r10") can be placed before the radix + too: both -16r10 and 16r-10 are accepted. + +o Fixed bug that caused some children not to be reaped. + +o Fixed bug when reading from a FIFO file and the writing side closed the + FIFO before GNU Smalltalk started reading it. + +o Fixed CByte to actually work. + +o Fixed corner case of nested exception handlers. + +o Fixed directory navigation on ZIP archives (when using the VFSAddOns + package). + +o Fixed HTTP GETs that caused a redirect and had a query. + +o Fixed leakage of file descriptors on ZIP archives (when *not* using the + VFSAddOns package). + +o Fixed MappedCollection>>#keysDo:. + +o Fixed rare bug in the bytecode optimizer that caused invalid + (non-verifiable) or even incorrect bytecode to be generated. + +o Fixed Stream>>#do: and Stream>>#linesDo:, which would terminate in + advance if *another* stream was read past its end during the argument + block's execution. + +o Fixed the tools to work on Windows even if invoked with an explicit + extension for the executable. + +o gst-convert is now really quiet if invoked with --quiet. + +o Moved SequenceableCollection>>#join to Collection. + +o Removed bashisms from installed shell scripts. + +o Sockets use the close-on-exec option (see fcntl(2) for more information). + +o Sport fixes: fixed SpFilename>>#fail (did not work) and + SpSocket>>#readInto:startingAt:for: (should only do one I/O operation, + possibly returning a partially filled buffer). + +o UNC paths are parsed correctly by File. + +----------------------------------------------------------------------------- + + NEWS FROM 3.0.2 TO 3.0.3 o File>>#withReadStreamDo: and File>>#withWriteStreamDo: now return diff -rNu smalltalk-3.0.3/build-aux/libtool.m4 smalltalk-3.0.4/build-aux/libtool.m4 --- smalltalk-3.0.3/build-aux/libtool.m4 2008-04-10 11:10:47.000000000 +0200 +++ smalltalk-3.0.4/build-aux/libtool.m4 2008-07-25 17:10:32.000000000 +0200 @@ -22,8 +22,6 @@ ## configuration script generated by Autoconf, you may include it under ## the same distribution terms that you use for the rest of that program. -# serial 47 AC_PROG_LIBTOOL - # AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) # ----------------------------------------------------------- diff -rNu smalltalk-3.0.3/build-aux/ltdl.m4 smalltalk-3.0.4/build-aux/ltdl.m4 --- smalltalk-3.0.3/build-aux/ltdl.m4 2008-04-10 11:10:47.000000000 +0200 +++ smalltalk-3.0.4/build-aux/ltdl.m4 2008-07-25 17:10:32.000000000 +0200 @@ -20,8 +20,6 @@ ## configuration script generated by Autoconf, you may include it under ## the same distribution terms that you use for the rest of that program. -# serial 6 AC_LIB_LTDL -# Debian $Rev: 42 $ # AC_WITH_LTDL # ------------ diff -rNu smalltalk-3.0.3/config.h.in smalltalk-3.0.4/config.h.in --- smalltalk-3.0.3/config.h.in 2008-05-14 12:07:56.000000000 +0200 +++ smalltalk-3.0.4/config.h.in 2008-08-09 15:17:14.000000000 +0200 @@ -533,6 +533,9 @@ /* Define as the return type of signal handlers (`int' or `void'). */ #undef RETSIGTYPE +/* The size of `int', as computed by sizeof. */ +#undef SIZEOF_INT + /* The size of `mp_limb_t', as computed by sizeof. */ #undef SIZEOF_MP_LIMB_T @@ -542,6 +545,9 @@ /* The size of `OOP', as computed by sizeof. */ #undef SIZEOF_OOP +/* The size of `wchar_t', as computed by sizeof. */ +#undef SIZEOF_WCHAR_T + /* If using the C implementation of alloca, define if you know the direction of stack growth for your system; otherwise it will be automatically deduced at runtime. diff -rNu smalltalk-3.0.3/configure smalltalk-3.0.4/configure --- smalltalk-3.0.3/configure 2008-05-14 12:04:54.000000000 +0200 +++ smalltalk-3.0.4/configure 2008-08-09 15:13:32.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.61 for GNU Smalltalk 3.0.3. +# Generated by GNU Autoconf 2.61 for GNU Smalltalk 3.0.4. # # Report bugs to . # @@ -724,8 +724,8 @@ # Identity of this package. PACKAGE_NAME='GNU Smalltalk' PACKAGE_TARNAME='smalltalk' -PACKAGE_VERSION='3.0.3' -PACKAGE_STRING='GNU Smalltalk 3.0.3' +PACKAGE_VERSION='3.0.4' +PACKAGE_STRING='GNU Smalltalk 3.0.4' PACKAGE_BUGREPORT='help-smalltalk@gnu.org' ac_unique_file="main.c" @@ -1457,7 +1457,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures GNU Smalltalk 3.0.3 to adapt to many kinds of systems. +\`configure' configures GNU Smalltalk 3.0.4 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1527,7 +1527,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of GNU Smalltalk 3.0.3:";; + short | recursive ) echo "Configuration of GNU Smalltalk 3.0.4:";; esac cat <<\_ACEOF @@ -1667,7 +1667,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -GNU Smalltalk configure 3.0.3 +GNU Smalltalk configure 3.0.4 generated by GNU Autoconf 2.61 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1681,7 +1681,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by GNU Smalltalk $as_me 3.0.3, which was +It was created by GNU Smalltalk $as_me 3.0.4, which was generated by GNU Autoconf 2.61. Invocation command line was $ $0 $@ @@ -2455,7 +2455,7 @@ # Define the identity of the package. PACKAGE='smalltalk' - VERSION='3.0.3' + VERSION='3.0.4' cat >>confdefs.h <<_ACEOF @@ -7803,6 +7803,830 @@ _ACEOF +{ echo "$as_me:$LINENO: checking for int" >&5 +echo $ECHO_N "checking for int... $ECHO_C" >&6; } +if test "${ac_cv_type_int+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +typedef int ac__type_new_; +int +main () +{ +if ((ac__type_new_ *) 0) + return 0; +if (sizeof (ac__type_new_)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_int=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_int=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_type_int" >&5 +echo "${ECHO_T}$ac_cv_type_int" >&6; } + +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ echo "$as_me:$LINENO: checking size of int" >&5 +echo $ECHO_N "checking size of int... $ECHO_C" >&6; } +if test "${ac_cv_sizeof_int+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default + typedef int ac__type_sizeof_; +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= 0)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default + typedef int ac__type_sizeof_; +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default + typedef int ac__type_sizeof_; +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) < 0)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default + typedef int ac__type_sizeof_; +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=$ac_mid; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo= ac_hi= +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default + typedef int ac__type_sizeof_; +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr '(' $ac_mid ')' + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_int=$ac_lo;; +'') if test "$ac_cv_type_int" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (int) +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (int) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_int=0 + fi ;; +esac +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default + typedef int ac__type_sizeof_; +static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } +static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } +#include +#include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + return 1; + if (((long int) (sizeof (ac__type_sizeof_))) < 0) + { + long int i = longval (); + if (i != ((long int) (sizeof (ac__type_sizeof_)))) + return 1; + fprintf (f, "%ld\n", i); + } + else + { + unsigned long int i = ulongval (); + if (i != ((long int) (sizeof (ac__type_sizeof_)))) + return 1; + fprintf (f, "%lu\n", i); + } + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_sizeof_int=`cat conftest.val` +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +if test "$ac_cv_type_int" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (int) +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (int) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_int=0 + fi +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.val +fi +{ echo "$as_me:$LINENO: result: $ac_cv_sizeof_int" >&5 +echo "${ECHO_T}$ac_cv_sizeof_int" >&6; } + + + +cat >>confdefs.h <<_ACEOF +#define SIZEOF_INT $ac_cv_sizeof_int +_ACEOF + + +{ echo "$as_me:$LINENO: checking for wchar_t" >&5 +echo $ECHO_N "checking for wchar_t... $ECHO_C" >&6; } +if test "${ac_cv_type_wchar_t+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include + +typedef wchar_t ac__type_new_; +int +main () +{ +if ((ac__type_new_ *) 0) + return 0; +if (sizeof (ac__type_new_)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_wchar_t=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_wchar_t=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_type_wchar_t" >&5 +echo "${ECHO_T}$ac_cv_type_wchar_t" >&6; } + +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ echo "$as_me:$LINENO: checking size of wchar_t" >&5 +echo $ECHO_N "checking size of wchar_t... $ECHO_C" >&6; } +if test "${ac_cv_sizeof_wchar_t+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include + + typedef wchar_t ac__type_sizeof_; +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= 0)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=0 ac_mid=0 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include + + typedef wchar_t ac__type_sizeof_; +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr $ac_mid + 1` + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include + + typedef wchar_t ac__type_sizeof_; +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) < 0)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=-1 ac_mid=-1 + while :; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include + + typedef wchar_t ac__type_sizeof_; +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) >= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_lo=$ac_mid; break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_hi=`expr '(' $ac_mid ')' - 1` + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + ac_mid=`expr 2 '*' $ac_mid` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo= ac_hi= +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo` + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include + + typedef wchar_t ac__type_sizeof_; +int +main () +{ +static int test_array [1 - 2 * !(((long int) (sizeof (ac__type_sizeof_))) <= $ac_mid)]; +test_array [0] = 0 + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_hi=$ac_mid +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_lo=`expr '(' $ac_mid ')' + 1` +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in +?*) ac_cv_sizeof_wchar_t=$ac_lo;; +'') if test "$ac_cv_type_wchar_t" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (wchar_t) +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (wchar_t) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_wchar_t=0 + fi ;; +esac +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include + + typedef wchar_t ac__type_sizeof_; +static long int longval () { return (long int) (sizeof (ac__type_sizeof_)); } +static unsigned long int ulongval () { return (long int) (sizeof (ac__type_sizeof_)); } +#include +#include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + return 1; + if (((long int) (sizeof (ac__type_sizeof_))) < 0) + { + long int i = longval (); + if (i != ((long int) (sizeof (ac__type_sizeof_)))) + return 1; + fprintf (f, "%ld\n", i); + } + else + { + unsigned long int i = ulongval (); + if (i != ((long int) (sizeof (ac__type_sizeof_)))) + return 1; + fprintf (f, "%lu\n", i); + } + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_sizeof_wchar_t=`cat conftest.val` +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +if test "$ac_cv_type_wchar_t" = yes; then + { { echo "$as_me:$LINENO: error: cannot compute sizeof (wchar_t) +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot compute sizeof (wchar_t) +See \`config.log' for more details." >&2;} + { (exit 77); exit 77; }; } + else + ac_cv_sizeof_wchar_t=0 + fi +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.val +fi +{ echo "$as_me:$LINENO: result: $ac_cv_sizeof_wchar_t" >&5 +echo "${ECHO_T}$ac_cv_sizeof_wchar_t" >&6; } + + + +cat >>confdefs.h <<_ACEOF +#define SIZEOF_WCHAR_T $ac_cv_sizeof_wchar_t +_ACEOF + + { echo "$as_me:$LINENO: checking for OOP" >&5 echo $ECHO_N "checking for OOP... $ECHO_C" >&6; } if test "${ac_cv_type_OOP+set}" = set; then @@ -8776,7 +9600,7 @@ ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 8779 "configure"' > conftest.$ac_ext + echo '#line 9603 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -10334,11 +11158,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:10337: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11161: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:10341: \$? = $ac_status" >&5 + echo "$as_me:11165: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -10577,11 +11401,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:10580: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11404: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:10584: \$? = $ac_status" >&5 + echo "$as_me:11408: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -10637,11 +11461,11 @@ -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:10640: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11464: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:10644: \$? = $ac_status" >&5 + echo "$as_me:11468: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -12785,7 +13609,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext < conftest.$ac_ext < conftest.$ac_ext <]]) AC_CHECK_SIZEOF(OOP, , [[ typedef void *OOP;]]) diff -rNu smalltalk-3.0.3/doc/classes.texi smalltalk-3.0.4/doc/classes.texi --- smalltalk-3.0.3/doc/classes.texi 2008-05-14 12:35:03.000000000 +0200 +++ smalltalk-3.0.4/doc/classes.texi 2008-08-09 12:48:04.000000000 +0200 @@ -80,13 +80,14 @@ * BlockContext:: * Boolean:: * ByteArray:: -* ByteStream:: * CAggregate:: * CallinProcess:: * CArray:: * CArrayCType:: * CBoolean:: * CByte:: +* CCallable:: +* CCallbackDescriptor:: * CChar:: * CCompound:: * CDouble:: @@ -138,6 +139,7 @@ * False:: * File:: * FileDescriptor:: +* FilePath:: * FileSegment:: * FileStream:: * Float:: @@ -154,6 +156,7 @@ * IdentitySet:: * Integer:: * Interval:: +* Iterable:: * LargeArray:: * LargeArrayedCollection:: * LargeByteArray:: @@ -194,6 +197,7 @@ * Point:: * PositionableStream:: * Process:: +* ProcessEnvironment:: * ProcessorScheduler:: * Promise:: * Random:: @@ -248,6 +252,7 @@ * SystemExceptions.SecurityError:: * SystemExceptions.ShouldNotImplement:: * SystemExceptions.SubclassResponsibility:: +* SystemExceptions.UnhandledException:: * SystemExceptions.UserInterrupt:: * SystemExceptions.VerificationError:: * SystemExceptions.VMError:: @@ -264,14 +269,12 @@ * ValueHolder:: * VariableBinding:: * VersionableObjectProxy:: -* VFS.ArchiveFileHandler:: -* VFS.ArchiveMemberHandler:: -* VFS.CStatStruct:: -* VFS.DecodedFileHandler:: -* VFS.FileHandlerWrapper:: -* VFS.RealFileHandler:: -* VFS.TmpFileArchiveMemberHandler:: -* VFS.VFSHandler:: +* VFS.ArchiveFile:: +* VFS.ArchiveMember:: +* VFS.FileWrapper:: +* VFS.StoredZipMember:: +* VFS.TmpFileArchiveMember:: +* VFS.ZipFile:: * Warning:: * WeakArray:: * WeakIdentitySet:: @@ -307,15 +310,16 @@ @class{@t{ }, Boolean} @class{@t{ }, False} @class{@t{ }, True} -@class{@t{ }, CFunctionDescriptor} @class{@t{ }, CObject} @class{@t{ }, CAggregate} @class{@t{ }, CArray} @class{@t{ }, CPtr} @class{@t{ }, CString} +@class{@t{ }, CCallable} +@class{@t{ }, CCallbackDescriptor} +@class{@t{ }, CFunctionDescriptor} @class{@t{ }, CCompound} @class{@t{ }, CStruct} -@class{@t{ }, VFS.CStatStruct} @class{@t{ }, CUnion} @class{@t{ }, CScalar} @class{@t{ }, CChar} @@ -332,50 +336,6 @@ @class{@t{ }, CUInt} @class{@t{ }, CULong} @class{@t{ }, CUShort} -@class{@t{ }, Collection} -@class{@t{ }, Bag} -@class{@t{ }, HashedCollection} -@class{@t{ }, Dictionary} -@class{@t{ }, BindingDictionary} -@class{@t{ }, AbstractNamespace} -@class{@t{ }, Namespace} -@class{@t{ }, RootNamespace} -@class{@t{ }, SystemDictionary} -@class{@t{ }, LookupTable} -@class{@t{ }, IdentityDictionary} -@class{@t{ }, MethodDictionary} -@class{@t{ }, WeakValueLookupTable} -@class{@t{ }, WeakValueIdentityDictionary} -@class{@t{ }, WeakKeyDictionary} -@class{@t{ }, WeakKeyIdentityDictionary} -@class{@t{ }, Set} -@class{@t{ }, IdentitySet} -@class{@t{ }, WeakSet} -@class{@t{ }, WeakIdentitySet} -@class{@t{ }, MappedCollection} -@class{@t{ }, SequenceableCollection} -@class{@t{ }, ArrayedCollection} -@class{@t{ }, Array} -@class{@t{ }, WeakArray} -@class{@t{ }, ByteArray} -@class{@t{ }, CharacterArray} -@class{@t{ }, String} -@class{@t{ }, Symbol} -@class{@t{ }, UnicodeString} -@class{@t{ }, CompiledCode} -@class{@t{ }, CompiledBlock} -@class{@t{ }, CompiledMethod} -@class{@t{ }, Interval} -@class{@t{ }, LargeArrayedCollection} -@class{@t{ }, LargeArray} -@class{@t{ }, LargeByteArray} -@class{@t{ }, LargeWordArray} -@class{@t{ }, WordArray} -@class{@t{ }, LinkedList} -@class{@t{ }, Semaphore} -@class{@t{ }, OrderedCollection} -@class{@t{ }, RunArray} -@class{@t{ }, SortedCollection} @class{@t{ }, ContextPart} @class{@t{ }, BlockContext} @class{@t{ }, MethodContext} @@ -386,6 +346,7 @@ @class{@t{ }, CScalarCType} @class{@t{ }, CStringCType} @class{@t{ }, Delay} +@class{@t{ }, Directory} @class{@t{ }, DLD} @class{@t{ }, DumperProxy} @class{@t{ }, AlternativeObjectProxy} @@ -393,10 +354,72 @@ @class{@t{ }, VersionableObjectProxy} @class{@t{ }, PluggableProxy} @class{@t{ }, SingletonProxy} -@class{@t{ }, File} -@class{@t{ }, Directory} +@class{@t{ }, FilePath} +@class{@t{ }, File} +@class{@t{ }, VFS.ArchiveMember} +@class{@t{ }, VFS.TmpFileArchiveMember} +@class{@t{ }, VFS.StoredZipMember} +@class{@t{ }, VFS.FileWrapper} +@class{@t{ }, VFS.ArchiveFile} +@class{@t{ }, VFS.ZipFile} @class{@t{ }, FileSegment} @class{@t{ }, Getopt} +@class{@t{ }, Iterable} +@class{@t{ }, Collection} +@class{@t{ }, Bag} +@class{@t{ }, HashedCollection} +@class{@t{ }, Dictionary} +@class{@t{ }, BindingDictionary} +@class{@t{ }, AbstractNamespace} +@class{@t{ }, Namespace} +@class{@t{ }, RootNamespace} +@class{@t{ }, SystemDictionary} +@class{@t{ }, LookupTable} +@class{@t{ }, IdentityDictionary} +@class{@t{ }, MethodDictionary} +@class{@t{ }, WeakValueLookupTable} +@class{@t{ }, WeakValueIdentityDictionary} +@class{@t{ }, WeakKeyDictionary} +@class{@t{ }, WeakKeyIdentityDictionary} +@class{@t{ }, Set} +@class{@t{ }, IdentitySet} +@class{@t{ }, WeakSet} +@class{@t{ }, WeakIdentitySet} +@class{@t{ }, MappedCollection} +@class{@t{ }, SequenceableCollection} +@class{@t{ }, ArrayedCollection} +@class{@t{ }, Array} +@class{@t{ }, WeakArray} +@class{@t{ }, ByteArray} +@class{@t{ }, CharacterArray} +@class{@t{ }, String} +@class{@t{ }, Symbol} +@class{@t{ }, UnicodeString} +@class{@t{ }, CompiledCode} +@class{@t{ }, CompiledBlock} +@class{@t{ }, CompiledMethod} +@class{@t{ }, Interval} +@class{@t{ }, LargeArrayedCollection} +@class{@t{ }, LargeArray} +@class{@t{ }, LargeByteArray} +@class{@t{ }, LargeWordArray} +@class{@t{ }, WordArray} +@class{@t{ }, LinkedList} +@class{@t{ }, Semaphore} +@class{@t{ }, OrderedCollection} +@class{@t{ }, RunArray} +@class{@t{ }, SortedCollection} +@class{@t{ }, Stream} +@class{@t{ }, FileDescriptor} +@class{@t{ }, FileStream} +@class{@t{ }, Generator} +@class{@t{ }, ObjectDumper} +@class{@t{ }, PositionableStream} +@class{@t{ }, ReadStream} +@class{@t{ }, WriteStream} +@class{@t{ }, ReadWriteStream} +@class{@t{ }, Random} +@class{@t{ }, TextCollector} @superclass{@t{ }, Kernel.PackageInfo} @class{@t{ }, Package} @superclass{@t{ }, Kernel.TrappableEvent} @@ -440,6 +463,7 @@ @class{@t{ }, PackageLoader} @class{@t{ }, Permission} @class{@t{ }, Point} +@class{@t{ }, ProcessEnvironment} @class{@t{ }, ProcessorScheduler} @class{@t{ }, Rectangle} @class{@t{ }, RecursionLock} @@ -490,18 +514,7 @@ @class{@t{ }, SystemExceptions.EndOfStream} @class{@t{ }, SystemExceptions.ProcessBeingTerminated} @class{@t{ }, Warning} -@class{@t{ }, Stream} -@class{@t{ }, Generator} -@class{@t{ }, ObjectDumper} -@class{@t{ }, PositionableStream} -@class{@t{ }, ReadStream} -@class{@t{ }, WriteStream} -@class{@t{ }, ReadWriteStream} -@class{@t{ }, ByteStream} -@class{@t{ }, FileDescriptor} -@class{@t{ }, FileStream} -@class{@t{ }, Random} -@class{@t{ }, TextCollector} +@class{@t{ }, SystemExceptions.UnhandledException} @class{@t{ }, UndefinedObject} @class{@t{ }, ValueAdaptor} @class{@t{ }, NullValueHolder} @@ -509,13 +522,6 @@ @class{@t{ }, DelayedAdaptor} @class{@t{ }, ValueHolder} @class{@t{ }, Promise} -@class{@t{ }, VFS.VFSHandler} -@class{@t{ }, VFS.ArchiveMemberHandler} -@class{@t{ }, VFS.TmpFileArchiveMemberHandler} -@class{@t{ }, VFS.FileHandlerWrapper} -@class{@t{ }, VFS.ArchiveFileHandler} -@class{@t{ }, VFS.DecodedFileHandler} -@class{@t{ }, VFS.RealFileHandler} @enddetailmenu @endmenu @unmacro class @@ -539,7 +545,7 @@ @menu * AbstractNamespace class-instance creation:: (class) * AbstractNamespace-accessing:: (instance) -* AbstractNamespace-basic & copying:: (instance) +* AbstractNamespace-compiling:: (instance) * AbstractNamespace-copying:: (instance) * AbstractNamespace-namespace hierarchy:: (instance) * AbstractNamespace-overrides for superspaces:: (instance) @@ -618,22 +624,30 @@ -@node AbstractNamespace-basic & copying -@subsection AbstractNamespace:@- basic & copying +@node AbstractNamespace-compiling +@subsection AbstractNamespace:@- compiling @table @b -@meindex = -@item = arg -Answer whether the receiver is equal to arg. The equality test is -by default the same as that for equal objects. = must not fail; -answer false if the receiver cannot be compared to arg +@meindex addSharedPool:@- +@item addSharedPool:@- aDictionary +Import the given bindings for classes compiled with me as +environment. -@meindex hash -@slindex identityHash -@item hash -Answer an hash value for the receiver. This is the same as the -object's @-#identityHash. +@meindex import:@- +@item import:@- aDictionary +Import the given bindings for classes compiled with me as +environment. + + +@meindex removeSharedPool:@- +@item removeSharedPool:@- aDictionary +Remove aDictionary from my list of direct pools. + + +@meindex sharedPoolDictionaries +@item sharedPoolDictionaries +Answer the shared pools (not names) imported for my classes. @end table @@ -685,11 +699,6 @@ Invokes aBlock for all subspaces, both direct and indirect. -@meindex allSuperspaces -@item allSuperspaces -Answer all the receiver's superspaces in a collection - - @meindex allSuperspacesDo:@- @item allSuperspacesDo:@- aBlock Evaluate aBlock once for each of the receiver's superspaces @@ -715,12 +724,6 @@ returns true even if the global is not a class object. -@meindex inheritsFrom:@- -@item inheritsFrom:@- aNamespace -Answer whether aNamespace is one of the receiver's direct and -indirect superspaces - - @meindex removeSubspace:@- @item removeSubspace:@- aSymbol Remove my subspace named aSymbol from the hierarchy. @@ -780,17 +783,6 @@ and indirect. -@meindex withAllSuperspaces -@item withAllSuperspaces -Answer the receiver and all of its superspaces in a collection - - -@meindex withAllSuperspacesDo:@- -@item withAllSuperspacesDo:@- aBlock -Invokes aBlock for the receiver and all superspaces, both direct -and indirect. - - @end table @@ -799,32 +791,6 @@ @subsection AbstractNamespace:@- overrides for superspaces @table @b -@meindex definedKeys -@item definedKeys -Answer a kind of Set containing the keys of the receiver - - -@meindex definesKey:@- -@item definesKey:@- key -Answer whether the receiver defines the given key. `Defines' -means that the receiver's superspaces, if any, are not considered. - - -@meindex hereAt:@- -@item hereAt:@- key -Return the value associated to the variable named as specified -by `key' *in this namespace*. If the key is not found search will -*not* be carried on in superspaces and the method will fail. - - -@meindex hereAt:@-ifAbsent:@- -@item hereAt:@- key ifAbsent:@- aBlock -Return the value associated to the variable named as specified -by `key' *in this namespace*. If the key is not found search will -*not* be carried on in superspaces and aBlock will be immediately -evaluated. - - @meindex inheritedKeys @item inheritedKeys Answer a Set of all the keys in the receiver and its superspaces @@ -1024,6 +990,7 @@ @menu * Array class-instance creation:: (class) +* Array-built ins:: (instance) * Array-mutating objects:: (instance) * Array-printing:: (instance) * Array-testing:: (instance) @@ -1045,6 +1012,21 @@ +@node Array-built ins +@subsection Array:@- built ins + +@table @b +@meindex replaceFrom:@-to:@-with:@-startingAt:@- +@item replaceFrom:@- start to:@- stop with:@- byteArray startingAt:@- replaceStart +Replace the characters from start to stop with new characters whose +ASCII codes are contained in byteArray, starting at the replaceStart +location of byteArray + + +@end table + + + @node Array-mutating objects @subsection Array:@- mutating objects @@ -1117,7 +1099,6 @@ * ArrayedCollection-built ins:: (instance) * ArrayedCollection-copying Collections:: (instance) * ArrayedCollection-enumerating the elements of a collection:: (instance) -* ArrayedCollection-enumeration:: (instance) * ArrayedCollection-storing:: (instance) * ArrayedCollection-streams:: (instance) @end menu @@ -1329,22 +1310,6 @@ -@node ArrayedCollection-enumeration -@subsection ArrayedCollection:@- enumeration - -@table @b -@meindex gather:@- -@item gather:@- aBlock -Answer a new instance of a Collection containing all the results -of evaluating aBlock, joined together. aBlock should return -collections. The result is the same kind of the receiver, -independent of the type of collection returned by aBlock. - - -@end table - - - @node ArrayedCollection-storing @subsection ArrayedCollection:@- storing @@ -1829,10 +1794,16 @@ Returns a set of all instances of the receiver +@meindex allSharedPoolDictionaries +@item allSharedPoolDictionaries +Return the shared pools defined by the class and any of +its superclasses, in the correct search order. + + @meindex allSharedPools @item allSharedPools Return the names of the shared pools defined by the class and any of -its superclasses +its superclasses, in the correct search order. @meindex classPool @@ -2081,6 +2052,12 @@ Calling this method prepares the parser to receive methods to be compiled and installed in the receiver's method dictionary. The methods are put in the category identified by the parameter. +@meindex poolResolution +@item poolResolution +Answer a PoolResolution class to be used for resolving pool +variables while compiling methods on this class. + + @end table @@ -2503,6 +2480,12 @@ @subsection Behavior:@- still unclassified @table @b +@meindex allSharedPoolDictionariesDo:@- +@item allSharedPoolDictionariesDo:@- aBlock +Answer the shared pools visible from methods in the metaclass, +in the correct search order. + + @meindex parseNodeAt:@- @item parseNodeAt:@- selector Available only when the Parser package is loaded--Answer an @@ -2764,6 +2747,7 @@ @menu * BindingDictionary-accessing:: (instance) +* BindingDictionary-basic & copying:: (instance) * BindingDictionary-copying:: (instance) * BindingDictionary-forward declarations:: (instance) * BindingDictionary-printing:: (instance) @@ -2837,6 +2821,28 @@ +@node BindingDictionary-basic & copying +@subsection BindingDictionary:@- basic & copying + +@table @b +@meindex = +@item = arg +Answer whether the receiver is equal to arg. The equality test is +by default the same as that for equal objects. = must not fail; +answer false if the receiver cannot be compared to arg + + +@meindex hash +@slindex identityHash +@item hash +Answer an hash value for the receiver. This is the same as the +object's @-#identityHash. + + +@end table + + + @node BindingDictionary-copying @subsection BindingDictionary:@- copying @@ -3082,6 +3088,24 @@ @subsection BlockClosure:@- built ins @table @b +@meindex cull:@- +@item cull:@- arg1 +Evaluate the receiver, passing arg1 as the only parameter if +the receiver has parameters. + + +@meindex cull:@-cull:@- +@item cull:@- arg1 cull:@- arg2 +Evaluate the receiver, passing arg1 and arg2 as parameters if +the receiver accepts them. + + +@meindex cull:@-cull:@-cull:@- +@item cull:@- arg1 cull:@- arg2 cull:@- arg3 +Evaluate the receiver, passing arg1, arg2 and arg3 as parameters if +the receiver accepts them. + + @meindex value @item value Evaluate the receiver passing no parameters @@ -3230,9 +3254,7 @@ @meindex forkWithoutPreemption @item forkWithoutPreemption Evaluate the receiver in a process that cannot be preempted. -If the receiver expect a parameter, pass the current process -(can be useful for queuing interrupts from within the -uninterruptible process). +If the receiver expect a parameter, pass the current process. @meindex newProcess @@ -3611,6 +3633,7 @@ @menu * ByteArray class-instance creation:: (class) +* ByteArray-basic:: (instance) * ByteArray-built ins:: (instance) * ByteArray-converting:: (instance) * ByteArray-more advanced accessing:: (instance) @@ -3633,6 +3656,19 @@ +@node ByteArray-basic +@subsection ByteArray:@- basic + +@table @b +@meindex = +@item = aCollection +Answer whether the receiver's items match those in aCollection + + +@end table + + + @node ByteArray-built ins @subsection ByteArray:@- built ins @@ -3658,14 +3694,6 @@ Answer an hash value for the receiver -@meindex primReplaceFrom:@-to:@-with:@-startingAt:@- -@item primReplaceFrom:@- start to:@- stop with:@- aByteArray startingAt:@- srcIndex -Private - Replace the characters from start to stop with the -ASCII codes contained in aString (which, actually, can be -any variable byte class), starting at the srcIndex location of -aString - - @meindex replaceFrom:@-to:@-with:@-startingAt:@- @item replaceFrom:@- start to:@- stop with:@- aByteArray startingAt:@- replaceStart Replace the characters from start to stop with the @@ -3963,130 +3991,6 @@ @end table -@node ByteStream -@section ByteStream -@clindex ByteStream - -@table @b -@item Defined in namespace Smalltalk -@itemx Superclass: ReadWriteStream -@itemx Category: Streams-Collections -My instances are read/write streams specially crafted for ByteArrays. -They are able to write binary data to them. -@end table - -@menu -* ByteStream-basic:: (instance) -@end menu - - - -@node ByteStream-basic -@subsection ByteStream:@- basic - -@table @b -@meindex next -@item next -Return the next *character* in the ByteArray - - -@meindex nextByte -@item nextByte -Return the next byte in the byte array - - -@meindex nextByteArray:@- -@item nextByteArray:@- numBytes -Return the next numBytes bytes in the byte array - - -@meindex nextDouble -@item nextDouble -Return the next 64-bit float in the byte array - - -@meindex nextFloat -@item nextFloat -Return the next 32-bit float in the byte array - - -@meindex nextLong -@item nextLong -Return the next 4 bytes in the byte array, interpreted as a 32 bit signed int - - -@meindex nextLongLong -@item nextLongLong -Return the next 8 bytes in the byte array, interpreted as a 64 bit signed int - - -@meindex nextPut:@- -@item nextPut:@- aChar -Store aChar on the byte array - - -@meindex nextPutByte:@- -@item nextPutByte:@- anInteger -Store anInteger (range:@- -128..255) on the byte array - - -@meindex nextPutByteArray:@- -@item nextPutByteArray:@- aByteArray -Store aByteArray on the byte array - - -@meindex nextPutDouble:@- -@item nextPutDouble:@- aDouble -Store aDouble as a 64-bit float in the byte array - - -@meindex nextPutFloat:@- -@item nextPutFloat:@- aFloat -Return the next 32-bit float in the byte array - - -@meindex nextPutInt64:@- -@item nextPutInt64:@- anInteger -Store anInteger (range:@- -2^63..2^64-1) on the byte array as 4 bytes - - -@meindex nextPutLong:@- -@item nextPutLong:@- anInteger -Store anInteger (range:@- -2^31..2^32-1) on the byte array as 4 bytes - - -@meindex nextPutShort:@- -@item nextPutShort:@- anInteger -Store anInteger (range:@- -32768..65535) on the byte array as 2 bytes - - -@meindex nextShort -@item nextShort -Return the next 2 bytes in the byte array, interpreted as a 16 bit signed int - - -@meindex nextSignedByte -@item nextSignedByte -Return the next byte in the byte array, interpreted as a 8 bit signed number - - -@meindex nextUint64 -@item nextUint64 -Return the next 8 bytes in the byte array, interpreted as a 64 bit unsigned int - - -@meindex nextUlong -@item nextUlong -Return the next 4 bytes in the byte array, interpreted as a 32 bit unsigned int - - -@meindex nextUshort -@item nextUshort -Return the next 2 bytes in the byte array, interpreted as a 16 bit unsigned int - - -@end table - @node CAggregate @section CAggregate @clindex CAggregate @@ -4354,6 +4258,194 @@ @end table +@node CCallable +@section CCallable +@clindex CCallable + +@table @b +@item Defined in namespace Smalltalk +@itemx Superclass: CObject +@itemx Category: Language-C interface +I am not part of the Smalltalk definition. My instances contain information +about C functions that can be called from within Smalltalk, such as number +and type of parameters. This information is used by the C callout mechanism +to perform the actual call-out to C routines. +@end table + +@menu +* CCallable class-instance creation:: (class) +* CCallable-accessing:: (instance) +* CCallable-calling:: (instance) +* CCallable-restoring:: (instance) +@end menu + + + +@node CCallable class-instance creation +@subsection CCallable class:@- instance creation + +@table @b +@meindex for:@-returning:@-withArgs:@- +@item for:@- aCObject returning:@- returnTypeSymbol withArgs:@- argsArray +Answer a CFunctionDescriptor with the given address, return type +and arguments. The address will be reset to NULL upon image save +(and it's the user's task to figure out a way to reinitialize it!) + + +@end table + + + +@node CCallable-accessing +@subsection CCallable:@- accessing + +@table @b +@meindex isValid +@item isValid +Answer whether the object represents a valid function. + + +@meindex returnType +@item returnType +Not commented. + +@end table + + + +@node CCallable-calling +@subsection CCallable:@- calling + +@table @b +@meindex asyncCall +@slindex self +@slindex selfSmalltalk +@item asyncCall +Perform the call-out for the function represented by the receiver. +The arguments (and the receiver if one of the arguments has type +@-#self or @-#selfSmalltalk) are taken from the parent context. +Asynchronous call-outs don't return a value, but if the +function calls back into Smalltalk the process that started the +call-out is not suspended. + + +@meindex asyncCallNoRetryFrom:@- +@slindex self +@slindex selfSmalltalk +@slindex asyncCallFrom:@- +@item asyncCallNoRetryFrom:@- aContext +Perform the call-out for the function represented by the receiver. +The arguments (and the receiver if one of the arguments has type +@-#self or @-#selfSmalltalk) are taken from the base of the stack of +aContext. Asynchronous call-outs don't return a value, but if the +function calls back into Smalltalk the process that started the +call-out is not suspended. Unlike @-#asyncCallFrom:@-, this method +does not attempt to find functions in shared objects. + + +@meindex callInto:@- +@slindex self +@slindex selfSmalltalk +@item callInto:@- aValueHolder +Perform the call-out for the function represented by the receiver. The +arguments (and the receiver if one of the arguments has type +@-#self or @-#selfSmalltalk) are taken from the parent context, and the +the result is stored into aValueHolder. aValueHolder is also returned. + + +@meindex callNoRetryFrom:@-into:@- +@slindex self +@slindex selfSmalltalk +@slindex callFrom:@-into:@- +@item callNoRetryFrom:@- aContext into:@- aValueHolder +Perform the call-out for the function represented by the receiver. The +arguments (and the receiver if one of the arguments has type +@-#self or @-#selfSmalltalk) are taken from the base of the stack of +aContext, and the result is stored into aValueHolder. aValueHolder +is also returned. Unlike @-#callFrom:@-into:@-, this method does not +attempt to find functions in shared objects. + + +@end table + + + +@node CCallable-restoring +@subsection CCallable:@- restoring + +@table @b +@meindex link +@item link +Rebuild the object after the image is restarted. + + +@end table + +@node CCallbackDescriptor +@section CCallbackDescriptor +@clindex CCallbackDescriptor + +@table @b +@item Defined in namespace Smalltalk +@itemx Superclass: CCallable +@itemx Category: Language-C interface +I am not part of the Smalltalk definition. My instances are +able to convert blocks into C functions that can be passed to C. +@end table + +@menu +* CCallbackDescriptor class-instance creation:: (class) +* CCallbackDescriptor-accessing:: (instance) +* CCallbackDescriptor-restoring:: (instance) +@end menu + + + +@node CCallbackDescriptor class-instance creation +@subsection CCallbackDescriptor class:@- instance creation + +@table @b +@meindex for:@-returning:@-withArgs:@- +@item for:@- aBlock returning:@- returnTypeSymbol withArgs:@- argsArray +Answer a CFunctionDescriptor with the given function name, return type +and arguments. funcName must be a String. + + +@end table + + + +@node CCallbackDescriptor-accessing +@subsection CCallbackDescriptor:@- accessing + +@table @b +@meindex block +@item block +Answer the name of the function (on the C side) represented by the +receiver + + +@meindex block:@- +@item block:@- aBlock +Set the name of the function (on the C side) represented by the +receiver + + +@end table + + + +@node CCallbackDescriptor-restoring +@subsection CCallbackDescriptor:@- restoring + +@table @b +@meindex link +@item link +Make the address of the function point to the registered address. + + +@end table + @node CChar @section CChar @clindex CChar @@ -4464,6 +4556,12 @@ @subsection CCompound class:@- instance creation @table @b +@meindex gcNew +@item gcNew +Allocate a new instance of the receiver, backed by garbage-collected +storage. + + @meindex new @slindex addToBeFinalized @item new @@ -4688,7 +4786,7 @@ @table @b @item Defined in namespace Smalltalk -@itemx Superclass: Object +@itemx Superclass: CCallable @itemx Category: Language-C interface I am not part of the Smalltalk definition. My instances contain information about C functions that can be called from within Smalltalk, such as number @@ -4700,8 +4798,8 @@ * CFunctionDescriptor class-instance creation:: (class) * CFunctionDescriptor class-testing:: (class) * CFunctionDescriptor-accessing:: (instance) -* CFunctionDescriptor-calling:: (instance) * CFunctionDescriptor-printing:: (instance) +* CFunctionDescriptor-restoring:: (instance) @end menu @@ -4711,8 +4809,9 @@ @table @b @meindex for:@-returning:@-withArgs:@- -@item for:@- funcNameString returning:@- returnTypeSymbol withArgs:@- argsArray -Private - Answer a CFunctionDescriptor +@item for:@- funcName returning:@- returnTypeSymbol withArgs:@- argsArray +Answer a CFunctionDescriptor with the given function name, return type +and arguments. funcName must be a String. @end table @@ -4743,98 +4842,42 @@ @subsection CFunctionDescriptor:@- accessing @table @b -@meindex address -@item address -Answer the address (CObject) of the function represented by -the receiver - - -@meindex address:@- -@item address:@- aCObject -Set to aCObject the address of the function represented by -the receiver - - -@meindex isValid -@item isValid -Answer whether the function represented by the receiver is actually -a registered one - - @meindex name @item name Answer the name of the function (on the C side) represented by the receiver -@end table - - - -@node CFunctionDescriptor-calling -@subsection CFunctionDescriptor:@- calling - -@table @b -@meindex asyncCall -@slindex self -@slindex selfSmalltalk -@item asyncCall -Perform the call-out for the function represented by the receiver. -The arguments (and the receiver if one of the arguments has type -@-#self or @-#selfSmalltalk) are taken from the parent context. -Asynchronous call-outs don't return a value, but if the -function calls back into Smalltalk the process that started the -call-out is not suspended. +@meindex name:@- +@item name:@- aString +Set the name of the function (on the C side) represented by the +receiver -@meindex asyncCallNoRetryFrom:@- -@slindex self -@slindex selfSmalltalk -@slindex asyncCallFrom:@- -@item asyncCallNoRetryFrom:@- aContext -Perform the call-out for the function represented by the receiver. -The arguments (and the receiver if one of the arguments has type -@-#self or @-#selfSmalltalk) are taken from the base of the stack of -aContext. Asynchronous call-outs don't return a value, but if the -function calls back into Smalltalk the process that started the -call-out is not suspended. Unlike @-#asyncCallFrom:@-, this method -does not attempt to find functions in shared objects. +@end table -@meindex callInto:@- -@slindex self -@slindex selfSmalltalk -@item callInto:@- aValueHolder -Perform the call-out for the function represented by the receiver. The -arguments (and the receiver if one of the arguments has type -@-#self or @-#selfSmalltalk) are taken from the parent context, and the -the result is stored into aValueHolder. aValueHolder is also returned. +@node CFunctionDescriptor-printing +@subsection CFunctionDescriptor:@- printing -@meindex callNoRetryFrom:@-into:@- -@slindex self -@slindex selfSmalltalk -@slindex callFrom:@-into:@- -@item callNoRetryFrom:@- aContext into:@- aValueHolder -Perform the call-out for the function represented by the receiver. The -arguments (and the receiver if one of the arguments has type -@-#self or @-#selfSmalltalk) are taken from the base of the stack of -aContext, and the result is stored into aValueHolder. aValueHolder -is also returned. Unlike @-#callFrom:@-into:@-, this method does not -attempt to find functions in shared objects. +@table @b +@meindex printOn:@- +@item printOn:@- aStream +Print a representation of the receiver onto aStream @end table -@node CFunctionDescriptor-printing -@subsection CFunctionDescriptor:@- printing +@node CFunctionDescriptor-restoring +@subsection CFunctionDescriptor:@- restoring @table @b -@meindex printOn:@- -@item printOn:@- aStream -Print a representation of the receiver onto aStream +@meindex link +@item link +Make the address of the function point to the registered address. @end table @@ -5072,6 +5115,11 @@ @subsection Character:@- coercion methods @table @b +@meindex * +@item * aNumber +Returns a String with aNumber occurrences of the receiver. + + @meindex asLowercase @item asLowercase Returns self as a lowercase character if it's an uppercase letter, @@ -5381,11 +5429,6 @@ the receiver, it is considered to be less than the receiver. -@meindex endsWith:@- -@item endsWith:@- aCharacterArray -Returns true if the receiver ends with the same characters as aCharacterArray. - - @meindex indexOf:@-matchCase:@-startingAt:@- @item indexOf:@- aCharacterArray matchCase:@- aBoolean startingAt:@- anIndex Answer an Interval of indices in the receiver which match the aCharacterArray @@ -5417,11 +5460,6 @@ case differences. -@meindex startsWith:@- -@item startsWith:@- aCharacterArray -Returns true if the receiver starts with the same characters as aCharacterArray. - - @end table @@ -5734,6 +5772,7 @@ * Class-printing:: (instance) * Class-saving and loading:: (instance) * Class-security:: (instance) +* Class-still unclassified:: (instance) * Class-testing:: (instance) * Class-testing functionality:: (instance) @end menu @@ -6119,6 +6158,20 @@ +@node Class-still unclassified +@subsection Class:@- still unclassified + +@table @b +@meindex allSharedPoolDictionariesDo:@- +@item allSharedPoolDictionariesDo:@- aBlock +Answer the shared pools visible from methods in the metaclass, +in the correct search order. + + +@end table + + + @node Class-testing @subsection Class:@- testing @@ -6561,12 +6614,15 @@ @menu * CObject class-conversion:: (class) * CObject class-instance creation:: (class) +* CObject class-primitive allocation:: (class) * CObject class-subclassing:: (class) * CObject-accessing:: (instance) +* CObject-basic:: (instance) * CObject-C data access:: (instance) * CObject-conversion:: (instance) * CObject-finalization:: (instance) * CObject-pointer-like behavior:: (instance) +* CObject-testing functionality:: (instance) @end menu @@ -6598,9 +6654,14 @@ Allocate nBytes bytes and return an instance of the receiver -@meindex alloc:@-type:@- -@item alloc:@- nBytes type:@- cTypeObject -Allocate nBytes bytes and return a CObject of the given type +@meindex gcAlloc:@- +@item gcAlloc:@- nBytes +Allocate nBytes bytes and return an instance of the receiver + + +@meindex gcNew:@- +@item gcNew:@- nBytes +Allocate nBytes bytes and return an instance of the receiver @meindex new @@ -6617,6 +6678,24 @@ +@node CObject class-primitive allocation +@subsection CObject class:@- primitive allocation + +@table @b +@meindex alloc:@-type:@- +@item alloc:@- nBytes type:@- cTypeObject +Allocate nBytes bytes and return a CObject of the given type + + +@meindex gcAlloc:@-type:@- +@item gcAlloc:@- nBytes type:@- cTypeObject +Allocate nBytes bytes and return a CObject of the given type + + +@end table + + + @node CObject class-subclassing @subsection CObject class:@- subclassing @@ -6635,8 +6714,12 @@ @table @b @meindex address +@slindex storage @item address -Answer the address the receiver is pointing to. +Answer the address the receiver is pointing to. The address can +be absolute if the storage is nil, or relative to the Smalltalk +object in @-#storage. In this case, an address of 0 corresponds to +the first instance variable. @meindex address:@- @@ -6644,11 +6727,28 @@ Set the receiver to point to the passed address, anInteger +@meindex isAbsolute +@item isAbsolute +Answer whether the object points into a garbage-collected Smalltalk +storage, or it is an absolute address. + + @meindex printOn:@- @item printOn:@- aStream Print a representation of the receiver +@meindex storage +@item storage +Answer the storage that the receiver is pointing into, or nil +if the address is absolute. + + +@meindex storage:@- +@item storage:@- anObject +Change the receiver to point to the storage of anObject. + + @meindex type:@- @item type:@- aCType Set the receiver's type to aCType. @@ -6658,8 +6758,26 @@ -@node CObject-C data access -@subsection CObject:@- C data access +@node CObject-basic +@subsection CObject:@- basic + +@table @b +@meindex = +@item = anObject +Return true if the receiver and aCObject are equal. + + +@meindex hash +@item hash +Return a hash value for anObject. + + +@end table + + + +@node CObject-C data access +@subsection CObject:@- C data access @table @b @meindex at:@-put:@-type:@- @@ -6806,13 +6924,25 @@ @end table + + +@node CObject-testing functionality +@subsection CObject:@- testing functionality + +@table @b +@meindex isCObject +@item isCObject +Answer `true'. + +@end table + @node Collection @section Collection @clindex Collection @table @b @item Defined in namespace Smalltalk -@itemx Superclass: Object +@itemx Superclass: Iterable @itemx Category: Collections I am an abstract class. My instances are collections of objects. My subclasses may place some restrictions or add some definitions to how @@ -6825,6 +6955,7 @@ * Collection class-instance creation:: (class) * Collection class-multibyte encodings:: (class) * Collection-adding:: (instance) +* Collection-concatenating:: (instance) * Collection-converting:: (instance) * Collection-copying Collections:: (instance) * Collection-enumeration:: (instance) @@ -6927,6 +7058,27 @@ +@node Collection-concatenating +@subsection Collection:@- concatenating + +@table @b +@meindex join +@item join +Answer a new collection like my first element, with all the +elements (in order) of all my elements, which should be +collections. + +I use my first element instead of myself as a prototype because +my elements are more likely to share the desired properties than +I am, such as in:@- + +@-#('hello, ' 'world') join => 'hello, world' + + +@end table + + + @node Collection-converting @subsection Collection:@- converting @@ -7021,23 +7173,11 @@ @subsection Collection:@- enumeration @table @b -@meindex allSatisfy:@- -@item allSatisfy:@- aBlock -Search the receiver for an element for which aBlock returns false. -Answer true if none does, false otherwise. - - @meindex anyOne @item anyOne Answer an unspecified element of the collection. -@meindex anySatisfy:@- -@item anySatisfy:@- aBlock -Search the receiver for an element for which aBlock returns true. -Answer true if some does, false otherwise. - - @meindex beConsistent @slindex do:@- @item beConsistent @@ -7058,76 +7198,13 @@ of evaluating aBlock passing each of the receiver's elements -@meindex conform:@- -@item conform:@- aBlock -Search the receiver for an element for which aBlock returns false. -Answer true if none does, false otherwise. - - -@meindex contains:@- -@item contains:@- aBlock -Search the receiver for an element for which aBlock returns true. -Answer true if some does, false otherwise. - - -@meindex count:@- -@item count:@- aBlock -Count the elements of the receiver for which aBlock returns true, -and return their number. - - -@meindex detect:@- -@item detect:@- aBlock -Search the receiver for an element for which aBlock returns true. -If some does, answer it. If none does, fail - - -@meindex detect:@-ifNone:@- -@item detect:@- aBlock ifNone:@- exceptionBlock -Search the receiver for an element for which aBlock returns true. -If some does, answer it. If none does, answer the result of evaluating -aBlock - - -@meindex do:@- -@item do:@- aBlock -Enumerate each object of the receiver, passing them to aBlock - - -@meindex do:@-separatedBy:@- -@item do:@- aBlock separatedBy:@- separatorBlock -Enumerate each object of the receiver, passing them to aBlock. -Between every two invocations of aBlock, invoke separatorBlock - - -@meindex fold:@- -@item fold:@- binaryBlock -First, pass to binaryBlock the first and second elements of the -receiver; for each subsequent element, pass the result of the previous -evaluation and an element. Answer the result of the last invocation, -or the first element if the collection has size 1. Fail if the collection -is empty. - - @meindex gather:@- +@slindex join @item gather:@- aBlock Answer a new instance of a Collection containing all the results of evaluating aBlock, joined together. aBlock should return -collections. The result is the same kind of the receiver, -independent of the type of collection returned by aBlock. - - -@meindex inject:@-into:@- -@item inject:@- thisValue into:@- binaryBlock -First, pass to binaryBlock thisValue and the first element of the -receiver; for each subsequent element, pass the result of the previous -evaluation and an element. Answer the result of the last invocation. - - -@meindex noneSatisfy:@- -@item noneSatisfy:@- aBlock -Search the receiver for an element for which aBlock returns true. -Answer true if none does, false otherwise. +collections. The result is the same kind as the first collection, +returned by aBlock (as for @-#join). @meindex readStream @@ -7384,6 +7461,19 @@ Set the selector through which the method is called +@meindex sourceCodeLinesDelta +@item sourceCodeLinesDelta +Answer the delta from the numbers in LINE_NUMBER bytecodes +to source code line numbers. + + +@meindex sourceCodeMap +@item sourceCodeMap +Answer an array which maps bytecode indices to source code +line numbers. 0 values represent invalid instruction +pointer indices. + + @meindex stackDepth @item stackDepth Answer the number of stack slots needed for the receiver @@ -7657,6 +7747,12 @@ Set the selector through which the method is called +@meindex sourceCodeLinesDelta +@item sourceCodeLinesDelta +Answer the delta from the numbers in LINE_NUMBER bytecodes +to source code line numbers. + + @meindex stackDepth @item stackDepth Answer the number of stack slots needed for the receiver @@ -7822,8 +7918,8 @@ of the indices between firstIndex and lastIndex. -@meindex jumpDestinationAt:@- -@item jumpDestinationAt:@- anIndex +@meindex jumpDestinationAt:@-forward:@- +@item jumpDestinationAt:@- anIndex forward:@- aBoolean Answer where the jump at bytecode index `anIndex' lands @@ -7875,6 +7971,7 @@ @end table @menu +* CompiledMethod class-c call-outs:: (class) * CompiledMethod class-instance creation:: (class) * CompiledMethod class-lean images:: (class) * CompiledMethod-accessing:: (instance) @@ -7891,6 +7988,30 @@ +@node CompiledMethod class-c call-outs +@subsection CompiledMethod class:@- c call-outs + +@table @b +@meindex asyncCCall:@-numArgs:@-attributes:@- +@slindex asyncCCall:@-args:@- +pragma +@item asyncCCall:@- descr numArgs:@- numArgs attributes:@- attributesArray +Return a CompiledMethod corresponding to a @-#asyncCCall:@-args:@- +pragma with the given arguments. + + +@meindex cCall:@-numArgs:@-attributes:@- +@slindex cCall:@-returning:@-args:@- +pragma +@item cCall:@- descr numArgs:@- numArgs attributes:@- attributesArray +Return a CompiledMethod corresponding to a @-#cCall:@-returning:@-args:@- +pragma with the given arguments. + + +@end table + + + @node CompiledMethod class-instance creation @subsection CompiledMethod class:@- instance creation @@ -8007,6 +8128,12 @@ Set the selector through which the method is called +@meindex sourceCodeLinesDelta +@item sourceCodeLinesDelta +Answer the delta from the numbers in LINE_NUMBER bytecodes +to source code line numbers. + + @meindex stackDepth @item stackDepth Answer the number of stack slots needed for the receiver @@ -8110,7 +8237,7 @@ Not commented. @meindex rewriteAsCCall:@-for:@- -@item rewriteAsCCall:@- func for:@- aClass +@item rewriteAsCCall:@- funcOrDescr for:@- aClass Not commented. @meindex rewriteAsCCall:@-returning:@-args:@- @@ -8300,7 +8427,6 @@ * ContextPart-copying:: (instance) * ContextPart-debugging:: (instance) * ContextPart-enumerating:: (instance) -* ContextPart-exception handling:: (instance) * ContextPart-printing:: (instance) * ContextPart-security checks:: (instance) @end menu @@ -8336,19 +8462,6 @@ Print a backtrace from the caller to the bottom of the stack on aStream -@meindex lastUnwindPoint -@item lastUnwindPoint -Private - Return the last context marked as an unwind point, or -our environment if none is. - - -@meindex removeLastUnwindPoint -@item removeLastUnwindPoint -Private - Return and remove the last context marked as an unwind point, -or our environment if the last unwind point belongs to another -environment. - - @meindex unwind @item unwind Return execution to the last context marked as an unwind point, returning @@ -8356,9 +8469,10 @@ @meindex unwind:@- +@slindex valueWithUnwind @item unwind:@- returnValue -Return execution to the last context marked as an unwind point, returning -returnValue on that stack. +Return execution to the innermost @-#valueWithUnwind call, passing it +returnValue. @end table @@ -8375,6 +8489,11 @@ message that created this context. Fail if the receiver has no parent +@meindex currentFileName +@item currentFileName +Answer the name of the file where the method source code is + + @meindex environment @item environment To create a valid execution environment for the interpreter even before @@ -8569,8 +8688,15 @@ @meindex currentLine @item currentLine Answer the 1-based number of the line that is pointed to by the receiver's -instruction pointer. It is always 1 unless the DebugTools package is -loaded. +instruction pointer. The DebugTools package caches information, +thus making the implementation faster. + + +@meindex currentLineInFile +@item currentLineInFile +Answer the 1-based number of the line that is pointed to by the +receiver's instruction pointer, relative to the method's file. +The implementation is slow unless the DebugTools package is loaded. @meindex debugger @@ -8618,19 +8744,6 @@ -@node ContextPart-exception handling -@subsection ContextPart:@- exception handling - -@table @b -@meindex mark -@item mark -Add the receiver as a possible unwind point - - -@end table - - - @node ContextPart-printing @subsection ContextPart:@- printing @@ -8915,6 +9028,12 @@ @subsection CScalar class:@- instance creation @table @b +@meindex gcValue:@- +@item gcValue:@- anObject +Answer a newly allocated CObject containing the passed value, +anObject, in garbage-collected storage. + + @meindex type @item type Answer a CType for the receiver---for example, CByteType if @@ -9413,6 +9532,13 @@ pointing to the given address (identified by an Integer or CObject). +@meindex gcNew +@item gcNew +Allocate a new CObject with the type (class) identified by the receiver. +The object is movable in memory, but on the other hand it is +garbage-collected automatically. + + @meindex new @item new Allocate a new CObject with the type (class) identified by the receiver. @@ -10722,7 +10848,7 @@ * Dictionary-dictionary enumerating:: (instance) * Dictionary-dictionary removing:: (instance) * Dictionary-dictionary testing:: (instance) -* Dictionary-polymorphism hacks:: (instance) +* Dictionary-namespace protocol:: (instance) * Dictionary-printing:: (instance) * Dictionary-rehashing:: (instance) * Dictionary-storing:: (instance) @@ -10977,13 +11103,83 @@ -@node Dictionary-polymorphism hacks -@subsection Dictionary:@- polymorphism hacks +@node Dictionary-namespace protocol +@subsection Dictionary:@- namespace protocol @table @b +@meindex allSuperspaces +@item allSuperspaces +Answer all the receiver's superspaces in a collection + + +@meindex allSuperspacesDo:@- +@item allSuperspacesDo:@- aBlock +Evaluate aBlock once for each of the receiver's superspaces (which +is none for BindingDictionary). + + +@meindex definedKeys +@item definedKeys +Answer a kind of Set containing the keys of the receiver + + +@meindex definesKey:@- +@item definesKey:@- key +Answer whether the receiver defines the given key. `Defines' +means that the receiver's superspaces, if any, are not considered. + + +@meindex hereAssociationAt:@- +@item hereAssociationAt:@- key +Return the association for the variable named as specified +by `key' *in this namespace*. If the key is not found search will +*not* be carried on in superspaces and the method will fail. + + +@meindex hereAssociationAt:@-ifAbsent:@- +@item hereAssociationAt:@- key ifAbsent:@- aBlock +Return the association for the variable named as specified +by `key' *in this namespace*. If the key is not found search will +*not* be carried on in superspaces and aBlock will be immediately +evaluated. + + +@meindex hereAt:@- +@item hereAt:@- key +Return the value associated to the variable named as specified +by `key' *in this namespace*. If the key is not found search will +*not* be carried on in superspaces and the method will fail. + + +@meindex hereAt:@-ifAbsent:@- +@item hereAt:@- key ifAbsent:@- aBlock +Return the value associated to the variable named as specified +by `key' *in this namespace*. If the key is not found search will +*not* be carried on in superspaces and aBlock will be immediately +evaluated. + + +@meindex inheritsFrom:@- +@item inheritsFrom:@- aNamespace +Answer whether aNamespace is one of the receiver's direct and +indirect superspaces + + +@meindex superspace +@item superspace +Answer the receiver's superspace, which is nil for BindingDictionary. + + @meindex withAllSuperspaces @item withAllSuperspaces -This method is needed by the compiler +Answer the receiver and all of its superspaces in a collection, +which is none for BindingDictionary + + +@meindex withAllSuperspacesDo:@- +@item withAllSuperspacesDo:@- aBlock +Invokes aBlock for the receiver and all superspaces, both direct +and indirect (though a BindingDictionary does not have any). @end table @@ -11192,7 +11388,7 @@ @table @b @item Defined in namespace Smalltalk -@itemx Superclass: File +@itemx Superclass: Object @itemx Category: Streams-Files I am the counterpart of File in a tree-structured file system:@- I can iterate through the file that I contain and construct new instances @@ -11205,8 +11401,6 @@ * Directory class-file name management:: (class) * Directory class-file operations:: (class) * Directory class-reading system defaults:: (class) -* Directory-accessing:: (instance) -* Directory-enumerating:: (instance) @end menu @@ -11286,7 +11480,7 @@ @meindex kernel @item kernel Answer the path in which a local version of the GNU Smalltalk kernel's -Smalltalk source files were searched when the image was created +Smalltalk source files were searched when the image was created. @meindex libexec @@ -11297,7 +11491,7 @@ @meindex localKernel @item localKernel Answer the path to the GNU Smalltalk kernel's Smalltalk source files. -Same as `Directory kernel' since GNU Smalltalk 2.4. +Same as `Directory kernel' since GNU Smalltalk 3.0. @meindex module @@ -11307,8 +11501,7 @@ @meindex systemKernel @item systemKernel -Answer the path to the GNU Smalltalk kernel's Smalltalk source files. -Same as `Directory kernel' since GNU Smalltalk 2.4. +Answer the path to the installed Smalltalk kernel source files. @meindex temporary @@ -11325,97 +11518,6 @@ @end table - - -@node Directory-accessing -@subsection Directory:@- accessing - -@table @b -@meindex at:@- -@item at:@- aName -Answer a File or Directory object as appropriate for a file named -'aName' in the directory represented by the receiver. - - -@meindex directoryAt:@- -@item directoryAt:@- aName -Answer a Directory object for a file named `aName' residing in the -directory represented by the receiver. - - -@meindex fileAt:@- -@item fileAt:@- aName -Answer a File object for a file named `aName' residing in the -directory represented by the receiver. - - -@meindex fullNameAt:@- -@item fullNameAt:@- aName -Answer a String containing the full path to a file named `aName' which -resides in the directory represented by the receiver. - - -@meindex includes:@- -@item includes:@- aName -Answer whether a file named `aName' exists in the directory represented -by the receiver. - - -@meindex nameAt:@- -@item nameAt:@- aName -Answer a String containing the path to a file named `aName' which -resides in the directory represented by the receiver. - - -@meindex pathTo:@- -@item pathTo:@- destName -Compute the relative path from the receiver to destName. - - -@end table - - - -@node Directory-enumerating -@subsection Directory:@- enumerating - -@table @b -@meindex allFilesMatching:@-do:@- -@slindex match:@- -@item allFilesMatching:@- aPattern do:@- aBlock -Evaluate aBlock on the File objects that match aPattern (according to -String>>@-#match:@-) in the directory named by the receiver. Recursively -descend into directories. - - -@meindex contents -@item contents -Answer an Array with the names of the files in the directory -represented by the receiver. - - -@meindex do:@- -@item do:@- aBlock -Evaluate aBlock once for each file in the directory represented by the -receiver, passing its name. aBlock should not return. - - -@meindex filesMatching:@-do:@- -@slindex match:@- -@item filesMatching:@- aPattern do:@- block -Evaluate block on the File objects that match aPattern (according to -String>>@-#match:@-) in the directory named by the receiver. - - -@meindex namesMatching:@-do:@- -@slindex match:@- -@item namesMatching:@- aPattern do:@- block -Evaluate block on the file names that match aPattern (according to -String>>@-#match:@-) in the directory named by the receiver. - - -@end table - @node DLD @section DLD @clindex DLD @@ -12102,25 +12204,24 @@ @table @b @item Defined in namespace Smalltalk -@itemx Superclass: Object +@itemx Superclass: FilePath @itemx Category: Streams-Files -I expose the syntax of file names, including paths. I know how to -manipulate such a path by splitting it into its components. In addition, -I expose information about files (both real and virtual) such as their -size and timestamps. +I enable access to the properties of files that are on disk. @end table @menu * File class-C functions:: (class) -* File class-file name management:: (class) * File class-file operations:: (class) +* File class-initialization:: (class) * File class-instance creation:: (class) * File class-reading system defaults:: (class) * File class-testing:: (class) * File-accessing:: (instance) +* File-basic:: (instance) +* File-directory operations:: (instance) * File-file name management:: (instance) * File-file operations:: (instance) -* File-printing:: (instance) +* File-still unclassified:: (instance) * File-testing:: (instance) @end menu @@ -12144,65 +12245,6 @@ -@node File class-file name management -@subsection File class:@- file name management - -@table @b -@meindex extensionFor:@- -@item extensionFor:@- aString -Answer the extension of a file named `aString'. Note:@- the extension -includes an initial dot. - - -@meindex fullNameFor:@- -@item fullNameFor:@- aString -Answer the full path to a file called `aString', resolving the `.' and -`..' directory entries, and answer the result. `/..' is the same as '/'. - - -@meindex pathFor:@- -@item pathFor:@- aString -Determine the path of the name of a file called `aString', and -answer the result. With the exception of the root directory, the -final slash is stripped. - - -@meindex pathFor:@-ifNone:@- -@item pathFor:@- aString ifNone:@- aBlock -Determine the path of the name of a file called `aString', and -answer the result. With the exception of the root directory, the -final slash is stripped. If there is no path, evaluate aBlock and -return the result. - - -@meindex pathFrom:@-to:@- -@item pathFrom:@- srcName to:@- destName -Answer the relative path to destName when the current -directory is srcName's directory. - - -@meindex stripExtensionFrom:@- -@item stripExtensionFrom:@- aString -Remove the extension from the name of a file called `aString', and -answer the result. - - -@meindex stripFileNameFor:@- -@item stripFileNameFor:@- aString -Determine the path of the name of a file called `aString', and -answer the result as a directory name including the final slash. - - -@meindex stripPathFrom:@- -@item stripPathFrom:@- aString -Remove the path from the name of a file called `aString', and -answer the file name plus extension. - - -@end table - - - @node File class-file operations @subsection File class:@- file operations @@ -12249,20 +12291,33 @@ +@node File class-initialization +@subsection File class:@- initialization + +@table @b +@meindex initialize +@item initialize +Initialize the receiver's class variables + + +@end table + + + @node File class-instance creation @subsection File class:@- instance creation @table @b @meindex name:@- @item name:@- aName -Answer a new file with the given path. The path is not validated until -some of the fields of the newly created objects are accessed +Answer a new file with the given path. The path is turned into +an absolute path. -@meindex on:@- -@item on:@- aVFSHandler -Answer a new file with the given path. The handler that returns -the information is aVFSHandler +@meindex path:@- +@item path:@- aString +Answer a new file with the given path. The path is not validated until +some of the fields of the newly created objects are accessed @end table @@ -12324,6 +12379,17 @@ @subsection File:@- accessing @table @b +@meindex asString +@item asString +Answer the name of the file identified by the receiver + + +@meindex at:@- +@item at:@- aString +Answer a File or Directory object as appropriate for a file named +'aName' in the directory represented by the receiver. + + @meindex creationTime @item creationTime Answer the creation time of the file identified by the receiver. @@ -12332,21 +12398,24 @@ like). -@meindex lastAccessTime -@item lastAccessTime -Answer the last access time of the file identified by the receiver +@meindex isDirectory +@item isDirectory +Answer whether the file is a directory. -@meindex lastAccessTime:@- -@item lastAccessTime:@- aDateTime -Update the last access time of the file corresponding to the receiver, -to be aDateTime. +@meindex isSocket +@item isSocket +Answer whether the file is an AF_UNIX socket. -@meindex lastAccessTime:@-lastModifyTime:@- -@item lastAccessTime:@- accessDateTime lastModifyTime:@- modifyDateTime -Update the timestamps of the file corresponding to the receiver, to be -accessDateTime and modifyDateTime. +@meindex isSymbolicLink +@item isSymbolicLink +Answer whether the file is a symbolic link. + + +@meindex lastAccessTime +@item lastAccessTime +Answer the last access time of the file identified by the receiver @meindex lastChangeTime @@ -12363,12 +12432,6 @@ (the `last modify time' has to do with the actual file contents). -@meindex lastModifyTime:@- -@item lastModifyTime:@- aDateTime -Update the last modification timestamp of the file corresponding to the -receiver, to be aDateTime. - - @meindex mode @item mode Answer the permission bits for the file identified by the receiver @@ -12385,6 +12448,11 @@ Answer the name of the file identified by the receiver +@meindex pathTo:@- +@item pathTo:@- destName +Compute the relative path from the receiver to destName. + + @meindex refresh @item refresh Refresh the statistics for the receiver @@ -12399,104 +12467,91 @@ -@node File-file name management -@subsection File:@- file name management +@node File-basic +@subsection File:@- basic @table @b -@meindex directory -@item directory -Answer the Directory object for the receiver's path +@meindex = +@item = aFile +Answer whether the receiver represents the same file as the receiver. -@meindex extension -@item extension -Answer the extension of the receiver +@meindex hash +@item hash +Answer a hash value for the receiver. -@meindex fullName -@item fullName -Answer the full name of the receiver, resolving the `.' and -`..' directory entries, and answer the result. Answer nil if the -name is invalid (such as '/usr/../../badname') +@end table -@meindex path -@item path -Answer the path (if any) of the receiver +@node File-directory operations +@subsection File:@- directory operations -@meindex stripExtension -@item stripExtension -Answer the path (if any) and file name of the receiver +@table @b +@meindex createDirectories +@item createDirectories +Create the receiver as a directory, together with all its parents. -@meindex stripFileName -@item stripFileName -Answer the path of the receiver, always including a directory -name (possibly `.') and the final directory separator +@meindex createDirectory +@item createDirectory +Create the receiver as a directory. -@meindex stripPath -@item stripPath -Answer the file name and extension (if any) of the receiver +@meindex namesDo:@- +@item namesDo:@- aBlock +Evaluate aBlock once for each file in the directory represented by the +receiver, passing its name. aBlock should not return. @end table -@node File-file operations -@subsection File:@- file operations +@node File-file name management +@subsection File:@- file name management @table @b -@meindex contents -@item contents -Open a read-only FileStream on the receiver, read its contents, -close the stream and answer the contents +@meindex full +@item full +Answer the full name of the receiver, resolving the `.' and +`..' directory entries, and answer the result. Answer nil if the +name is invalid (such as '/usr/../../badname') -@meindex open:@- -@item open:@- mode -Open the receiver in the given mode (as answered by FileStream's -class constant methods) +@end table -@meindex open:@-ifFail:@- -@item open:@- mode ifFail:@- aBlock -Open the receiver in the given mode (as answered by FileStream's -class constant methods). Upon failure, evaluate aBlock. +@node File-file operations +@subsection File:@- file operations -@meindex openDescriptor:@- -@item openDescriptor:@- mode -Open the receiver in the given mode (as answered by FileStream's -class constant methods) +@table @b +@meindex lastAccessTime:@-lastModifyTime:@- +@item lastAccessTime:@- accessDateTime lastModifyTime:@- modifyDateTime +Set the receiver's timestamps to be accessDateTime and modifyDateTime. -@meindex openDescriptor:@-ifFail:@- -@item openDescriptor:@- mode ifFail:@- aBlock +@meindex open:@-mode:@-ifFail:@- +@item open:@- class mode:@- mode ifFail:@- aBlock Open the receiver in the given mode (as answered by FileStream's -class constant methods). Upon failure, evaluate aBlock. +class constant methods) @meindex pathFrom:@- -@item pathFrom:@- dirName +@item pathFrom:@- dir Compute the relative path from the directory dirName to the receiver -@meindex readStream -@item readStream -Open a read-only FileStream on the receiver - - @meindex remove @item remove -Remove the file identified by the receiver +Remove the file with the given path name @meindex renameTo:@- -@item renameTo:@- newName -Rename the file identified by the receiver to newName +@item renameTo:@- newFileName +Rename the file with the given path name to newFileName @meindex symlinkAs:@- @@ -12507,48 +12562,21 @@ @meindex symlinkFrom:@- @item symlinkFrom:@- srcName -Create the receiver as a symbolic link from srcName (relative to the -path of the receiver). +Create the receiver as a symlink from path destName -@meindex touch -@item touch -Update the timestamp of the file corresponding to the receiver. +@end table -@meindex withReadStreamDo:@- -@item withReadStreamDo:@- aBlock -Invoke aBlock with a reading stream open on me, closing it -when the dynamic extent of aBlock ends. - -@meindex withWriteStreamDo:@- -@item withWriteStreamDo:@- aBlock -Invoke aBlock with a writing stream open on me, closing it -when the dynamic extent of aBlock ends. - - -@meindex writeStream -@item writeStream -Open a write-only FileStream on the receiver - - -@end table - - - -@node File-printing -@subsection File:@- printing +@node File-still unclassified +@subsection File:@- still unclassified @table @b -@meindex displayOn:@- -@item displayOn:@- aStream -Print a representation of the receiver on aStream. - - -@meindex printOn:@- -@item printOn:@- aStream -Print a representation of the receiver on aStream. +@meindex , +@item , aName +Answer an object of the same kind as the receiver, whose name +is suffixed with aName. @end table @@ -12564,16 +12592,15 @@ Answer whether a file with the name contained in the receiver does exist. -@meindex isAccessible -@item isAccessible -Answer whether a directory with the name contained in the receiver does -exist and can be accessed +@meindex isAbsolute +@item isAbsolute +Answer whether the receiver identifies an absolute path. -@meindex isDirectory -@item isDirectory -Answer whether a file with the name contained in the receiver does exist -and identifies a directory. +@meindex isAccessible +@item isAccessible +Answer whether a directory with the name contained in the receiver +does exist and is accessible @meindex isExecutable @@ -12582,10 +12609,9 @@ and is executable -@meindex isFile -@item isFile -Answer whether a file with the name contained in the receiver does exist -and does not identify a directory. +@meindex isFileSystemPath +@item isFileSystemPath +Answer whether the receiver corresponds to a real filesystem path. @meindex isReadable @@ -12594,12 +12620,6 @@ and is readable -@meindex isSymbolicLink -@item isSymbolicLink -Answer whether a file with the name contained in the receiver does exist -and does not identify a directory. - - @meindex isWriteable @item isWriteable Answer whether a file with the name contained in the receiver does exist @@ -12614,7 +12634,7 @@ @table @b @item Defined in namespace Smalltalk -@itemx Superclass: ByteStream +@itemx Superclass: Stream @itemx Category: Streams-Files My instances are what conventional programmers think of as files. My instance creation methods accept the name of a disk file (or any named @@ -12630,11 +12650,14 @@ * FileDescriptor class-still unclassified:: (class) * FileDescriptor-accessing:: (instance) * FileDescriptor-basic:: (instance) +* FileDescriptor-binary I/O:: (instance) * FileDescriptor-built ins:: (instance) * FileDescriptor-class type methods:: (instance) * FileDescriptor-initialize-release:: (instance) * FileDescriptor-low-level access:: (instance) * FileDescriptor-overriding inherited methods:: (instance) +* FileDescriptor-polymorphism:: (instance) +* FileDescriptor-positioning:: (instance) * FileDescriptor-printing:: (instance) * FileDescriptor-testing:: (instance) @end menu @@ -12888,11 +12911,22 @@ Return the OS file descriptor of the file +@meindex file +@item file +Return the name of the file + + @meindex isOpen @item isOpen Answer whether the file is still open +@meindex isPeerAlive +@item isPeerAlive +Present for compatibility with sockets. For files, it answers +whether the file is still open + + @meindex isPipe @item isPipe Answer whether the file is a pipe or an actual disk file @@ -12966,11 +13000,6 @@ Store aCharacter on the file -@meindex nextPutByte:@- -@item nextPutByte:@- anInteger -Store the byte, anInteger, on the file - - @meindex nextPutByteArray:@- @item nextPutByteArray:@- aByteArray Store aByteArray on the file @@ -12982,6 +13011,12 @@ Returns nil when at end of stream. +@meindex peekFor:@- +@item peekFor:@- anObject +Returns whether the next element of the stream is equal to anObject, +without moving the pointer if it is not. + + @meindex position @item position Answer the zero-based position from the start of the file @@ -13017,10 +13052,111 @@ +@node FileDescriptor-binary I/O +@subsection FileDescriptor:@- binary I/O + +@table @b +@meindex nextByteArray:@- +@item nextByteArray:@- numBytes +Return the next numBytes bytes in the byte array + + +@meindex nextDouble +@item nextDouble +Return the next 64-bit float in the byte array + + +@meindex nextFloat +@item nextFloat +Return the next 32-bit float in the byte array + + +@meindex nextLong +@item nextLong +Return the next 4 bytes in the byte array, interpreted as a 32 bit signed int + + +@meindex nextLongLong +@item nextLongLong +Return the next 8 bytes in the byte array, interpreted as a 64 bit signed int + + +@meindex nextPutByte:@- +@item nextPutByte:@- anInteger +Store anInteger (range:@- -128..255) on the byte array + + +@meindex nextPutDouble:@- +@item nextPutDouble:@- aDouble +Store aDouble as a 64-bit float in the byte array + + +@meindex nextPutFloat:@- +@item nextPutFloat:@- aFloat +Return the next 32-bit float in the byte array + + +@meindex nextPutInt64:@- +@item nextPutInt64:@- anInteger +Store anInteger (range:@- -2^63..2^64-1) on the byte array as 4 bytes + + +@meindex nextPutLong:@- +@item nextPutLong:@- anInteger +Store anInteger (range:@- -2^31..2^32-1) on the byte array as 4 bytes + + +@meindex nextPutShort:@- +@item nextPutShort:@- anInteger +Store anInteger (range:@- -32768..65535) on the byte array as 2 bytes + + +@meindex nextShort +@item nextShort +Return the next 2 bytes in the byte array, interpreted as a 16 bit signed int + + +@meindex nextSignedByte +@item nextSignedByte +Return the next byte in the byte array, interpreted as a 8 bit signed number + + +@meindex nextUint64 +@item nextUint64 +Return the next 8 bytes in the byte array, interpreted as a 64 bit unsigned int + + +@meindex nextUlong +@item nextUlong +Return the next 4 bytes in the byte array, interpreted as a 32 bit unsigned int + + +@meindex nextUshort +@item nextUshort +Return the next 2 bytes in the byte array, interpreted as a 16 bit unsigned int + + +@end table + + + @node FileDescriptor-built ins @subsection FileDescriptor:@- built ins @table @b +@meindex fileIn +@item fileIn +File in the contents of the receiver. +During a file in operation, global variables (starting with an +uppercase letter) that are not declared don't yield an `unknown +variable' error. Instead, they are defined as nil in the `Undeclared' +dictionary (a global variable residing in Smalltalk). +As soon as you add the variable to a namespace (for example by creating +a class) the Association will be removed from Undeclared and reused +in the namespace, so that the old references will automagically point +to the new value. + + @meindex fileOp:@- @item fileOp:@- ioFuncIndex Private - Used to limit the number of primitives used by FileStreams @@ -13112,11 +13248,6 @@ Initialize the receiver's instance variables -@meindex newBuffer -@item newBuffer -Private - Answer a String to be used as the receiver's buffer - - @meindex readStream @item readStream Answer myself, or an alternate stream coerced for reading. @@ -13135,49 +13266,17 @@ @subsection FileDescriptor:@- low-level access @table @b -@meindex nextHunk -@item nextHunk -Answer the next buffers worth of stuff in the Stream represented -by the receiver. Do at most one actual input operation. - - -@meindex read:@- -@item read:@- byteArray -Ignoring any buffering, try to fill byteArray with the -contents of the file - - -@meindex read:@-from:@-to:@- -@item read:@- byteArray from:@- position to:@- end -Ignoring any buffering, try to fill the given range of byteArray -with the contents of the file +@meindex next:@-putAll:@-startingAt:@- +@item next:@- n putAll:@- aCollection startingAt:@- position +Put the characters in the supplied range of aCollection in the file -@meindex read:@-numBytes:@- -@item read:@- byteArray numBytes:@- anInteger -Ignoring any buffering, try to fill anInteger bytes of byteArray +@meindex nextAvailable:@-into:@-startingAt:@- +@item nextAvailable:@- n into:@- aCollection startingAt:@- position +Ignoring any buffering, try to fill the given range of aCollection with the contents of the file -@meindex write:@- -@item write:@- byteArray -Ignoring any buffering, try to write the contents of byteArray in the -file - - -@meindex write:@-from:@-to:@- -@item write:@- byteArray from:@- position to:@- end -Ignoring any buffering, try to write to the file the given range -of byteArray, starting at the position-th element and ending -at the end-th. - - -@meindex write:@-numBytes:@- -@item write:@- byteArray numBytes:@- anInteger -Ignoring any buffering, try to write to the file the first anInteger -bytes of byteArray - - @end table @@ -13191,19 +13290,9 @@ Answer whether the receiver is empty -@meindex next:@- -@item next:@- anInteger -Return the next 'anInteger' characters from the stream, as a String. - - -@meindex next:@-putAll:@-startingAt:@- -@item next:@- n putAll:@- aCollection startingAt:@- position -Put the characters in the supplied range of aCollection in the file - - -@meindex nextByteArray:@- -@item nextByteArray:@- anInteger -Return the next 'anInteger' bytes from the stream, as a ByteArray. +@meindex nextPutAllOn:@- +@item nextPutAllOn:@- aStream +Put all the characters of the receiver in aStream. @meindex reverseContents @@ -13225,6 +13314,33 @@ +@node FileDescriptor-polymorphism +@subsection FileDescriptor:@- polymorphism + +@table @b +@meindex pastEnd +@item pastEnd +The end of the stream has been reached. Signal a Notification. + + +@end table + + + +@node FileDescriptor-positioning +@subsection FileDescriptor:@- positioning + +@table @b +@meindex isPositionable +@slindex skip:@- +@item isPositionable +Answer true if the stream supports moving backwards with @-#skip:@-. + + +@end table + + + @node FileDescriptor-printing @subsection FileDescriptor:@- printing @@ -13249,307 +13365,927 @@ @end table -@node FileSegment -@section FileSegment -@clindex FileSegment +@node FilePath +@section FilePath +@clindex FilePath @table @b @item Defined in namespace Smalltalk @itemx Superclass: Object -@itemx Category: Language-Implementation -My instances represent sections of files. I am primarily used by the -compiler to record source code locations. I am not a part of the normal -Smalltalk-80 kernel; I am specific to the GNU Smalltalk implementation. +@itemx Category: Streams-Files +I expose the syntax of file names, including paths. I know how to +manipulate such a path by splitting it into its components. In addition, +I expose information about files (both real and virtual) such as their +size and timestamps. @end table @menu -* FileSegment class-basic:: (class) -* FileSegment class-installing:: (class) -* FileSegment-basic:: (instance) -* FileSegment-equality:: (instance) +* FilePath class-file name management:: (class) +* FilePath class-still unclassified:: (class) +* FilePath-accessing:: (instance) +* FilePath-converting:: (instance) +* FilePath-decoration:: (instance) +* FilePath-directory operations:: (instance) +* FilePath-enumerating:: (instance) +* FilePath-file name management:: (instance) +* FilePath-file operations:: (instance) +* FilePath-printing:: (instance) +* FilePath-still unclassified:: (instance) +* FilePath-testing:: (instance) +* FilePath-virtual filesystems:: (instance) @end menu -@node FileSegment class-basic -@subsection FileSegment class:@- basic +@node FilePath class-file name management +@subsection FilePath class:@- file name management @table @b -@meindex on:@-startingAt:@-for:@- -@item on:@- aFile startingAt:@- startPos for:@- sizeInteger -Create a new FileSegment referring to the contents of the given file, -from the startPos-th byte and for sizeInteger bytes - - -@end table +@meindex append:@-to:@- +@item append:@- fileName to:@- directory +Answer the name of a file named `fileName' which resides in a directory +named `directory'. +@meindex extensionFor:@- +@item extensionFor:@- aString +Answer the extension of a file named `aString'. Note:@- the extension +includes an initial dot. -@node FileSegment class-installing -@subsection FileSegment class:@- installing -@table @b -@meindex relocateFrom:@-to:@- -@item relocateFrom:@- startPath to:@- endPath -Remove startPath from all paths that start with it, and replace it -with endPath. Needed to support $(DESTDIR) when installing +@meindex fullNameFor:@- +@item fullNameFor:@- aString +Answer the full path to a file called `aString', resolving the `.' and +`..' directory entries, and answer the result. `/..' is the same as '/'. -@end table +@meindex pathFor:@- +@item pathFor:@- aString +Determine the path of the name of a file called `aString', and +answer the result. With the exception of the root directory, the +final slash is stripped. +@meindex pathFor:@-ifNone:@- +@item pathFor:@- aString ifNone:@- aBlock +Determine the path of the name of a file called `aString', and +answer the result. With the exception of the root directory, the +final slash is stripped. If there is no path, evaluate aBlock and +return the result. -@node FileSegment-basic -@subsection FileSegment:@- basic -@table @b -@meindex asString -@item asString -Answer a String containing the required segment of the file +@meindex pathFrom:@-to:@- +@item pathFrom:@- srcName to:@- destName +Answer the relative path to destName when the current +directory is srcName's directory. -@meindex copyFrom:@-to:@- -@item copyFrom:@- from to:@- to -Answer a String containing the given subsegment of the file. As for -streams, from and to are 0-based. +@meindex stripExtensionFrom:@- +@item stripExtensionFrom:@- aString +Remove the extension from the name of a file called `aString', and +answer the result. -@meindex fileName -@item fileName -Answer the name of the file containing the segment +@meindex stripFileNameFor:@- +@item stripFileNameFor:@- aString +Determine the path of the name of a file called `aString', and +answer the result as a directory name including the final slash. -@meindex filePos -@item filePos -Answer the position in the file where the segment starts +@meindex stripPathFrom:@- +@item stripPathFrom:@- aString +Remove the path from the name of a file called `aString', and +answer the file name plus extension. -@meindex relocateFrom:@-to:@-map:@- -@item relocateFrom:@- startPath to:@- endPath map:@- map -If the path starts with startPath, remove that part of the path -and replace it with endPath. map is a Dictionary that is used -so that equal filenames stay equal, without increasing the amount -of memory that the image uses. +@end table -@meindex size -@item size -Answer the length of the segment +@node FilePath class-still unclassified +@subsection FilePath class:@- still unclassified -@meindex withFileDo:@- -@item withFileDo:@- aBlock -Evaluate aBlock passing it the FileStream in which the segment -identified by the receiver is stored +@table @b +@meindex isAbsolute:@- +@item isAbsolute:@- aString +Answer whether aString is an absolute ptah. @end table -@node FileSegment-equality -@subsection FileSegment:@- equality +@node FilePath-accessing +@subsection FilePath:@- accessing @table @b -@meindex = -@item = aFileSegment -Answer whether the receiver and aFileSegment are equal. - +@meindex at:@- +@item at:@- aName +Answer a File or Directory object as appropriate for a file named +'aName' in the directory represented by the receiver. -@meindex hash -@item hash -Answer an hash value for the receiver. +@meindex creationTime +@item creationTime +Answer the creation time of the file identified by the receiver. +On some operating systems, this could actually be the last change time +(the `last change time' has to do with permissions, ownership and the +like). -@end table -@node FileStream -@section FileStream -@clindex FileStream +@meindex includes:@- +@item includes:@- aName +Answer whether a file named `aName' exists in the directory represented +by the receiver. -@table @b -@item Defined in namespace Smalltalk -@itemx Superclass: FileDescriptor -@itemx Category: Streams-Files -My instances are what conventional programmers think of as files. -My instance creation methods accept the name of a disk file (or any named -file object, such as /dev/rmt0 on UNIX or MTA0:@- on VMS). -@end table -@menu -* FileStream class-file-in:: (class) -* FileStream class-standard streams:: (class) -* FileStream-basic:: (instance) -* FileStream-buffering:: (instance) -* FileStream-compiling:: (instance) -* FileStream-overriding inherited methods:: (instance) -* FileStream-testing:: (instance) -@end menu +@meindex lastAccessTime +@item lastAccessTime +Answer the last access time of the file identified by the receiver +@meindex lastAccessTime:@- +@item lastAccessTime:@- aDateTime +Update the last access time of the file corresponding to the receiver, +to be aDateTime. -@node FileStream class-file-in -@subsection FileStream class:@- file-in -@table @b -@meindex fileIn:@- -@item fileIn:@- aFileName -File in the aFileName file. During a file in operation, global variables -(starting with an uppercase letter) that are not declared yet don't yield -an `unknown variable' error. Instead, they are defined as nil in the -`Undeclared' dictionary (a global variable residing in Smalltalk). -As soon as you add the variable to a namespace (for example by creating -a class) the Association will be removed from Undeclared and reused -in the namespace, so that the old references will automagically point -to the new value. +@meindex lastAccessTime:@-lastModifyTime:@- +@item lastAccessTime:@- accessDateTime lastModifyTime:@- modifyDateTime +Update the timestamps of the file corresponding to the receiver, to be +accessDateTime and modifyDateTime. -@meindex fileIn:@-ifMissing:@- -@item fileIn:@- aFileName ifMissing:@- aSymbol -Conditionally do a file in, only if the key (often a class) specified -by 'aSymbol' is not present in the Smalltalk system dictionary already. -During a file in operation, global variables (starting with an -uppercase letter) that are not declared don't yield an `unknown -variable' error. Instead, they are defined as nil in the `Undeclared' -dictionary (a global variable residing in Smalltalk). -As soon as you add the variable to a namespace (for example by creating -a class) the Association will be removed from Undeclared and reused -in the namespace, so that the old references will automagically point -to the new value. +@meindex lastChangeTime +@item lastChangeTime +Answer the last change time of the file identified by the receiver +(the `last change time' has to do with permissions, ownership and the +like). On some operating systems, this could actually be the +file creation time. -@meindex fileIn:@-ifTrue:@- -@item fileIn:@- aFileName ifTrue:@- aBoolean -Conditionally do a file in, only if the supplied boolean is true. -During a file in operation, global variables (starting with an -uppercase letter) that are not declared don't yield an `unknown -variable' error. Instead, they are defined as nil in the `Undeclared' -dictionary (a global variable residing in Smalltalk). -As soon as you add the variable to a namespace (for example by creating -a class) the Association will be removed from Undeclared and reused -in the namespace, so that the old references will automagically point -to the new value. +@meindex lastModifyTime +@item lastModifyTime +Answer the last modify time of the file identified by the receiver +(the `last modify time' has to do with the actual file contents). -@meindex fileIn:@-line:@-from:@-at:@- -@item fileIn:@- aFileName line:@- lineInteger from:@- realFileName at:@- aCharPos -File in the aFileName file giving errors such as if it was loaded -from the given line, file name and starting position (instead of 1). +@meindex lastModifyTime:@- +@item lastModifyTime:@- aDateTime +Update the last modification timestamp of the file corresponding to the +receiver, to be aDateTime. -@meindex generateMakefileOnto:@- -@item generateMakefileOnto:@- aStream -Generate a make file for the file-ins since record was last set to true. -Store it on aStream +@meindex mode +@item mode +Answer the permission bits for the file identified by the receiver -@meindex initialize -@item initialize -Private - Initialize the receiver's class variables +@meindex mode:@- +@item mode:@- anInteger +Set the permission bits for the file identified by the receiver to be +anInteger. -@meindex record:@- -@slindex generateMakefileOnto:@- -@item record:@- recordFlag -Set whether Smalltalk should record information about nested file-ins. -When recording is enabled, use @-#generateMakefileOnto:@- to automatically -generate a valid makefile for the intervening file-ins. +@meindex pathTo:@- +@item pathTo:@- destName +Compute the relative path from the receiver to destName. -@meindex require:@- -@item require:@- assoc -Conditionally do a file in from the value of assoc, only if the -key of assoc is not present in the Smalltalk system dictionary already. -During a file in operation, global variables (starting with an -uppercase letter) that are not declared don't yield an `unknown -variable' error. Instead, they are defined as nil in the `Undeclared' -dictionary (a global variable residing in Smalltalk). -As soon as you add the variable to a namespace (for example by creating -a class) the Association will be removed from Undeclared and reused -in the namespace, so that the old references will automagically point -to the new value. +@meindex refresh +@item refresh +Refresh the statistics for the receiver -@meindex verbose:@- -@item verbose:@- verboseFlag -Set whether Smalltalk should output debugging messages when filing in +@meindex size +@item size +Answer the size of the file identified by the receiver @end table -@node FileStream class-standard streams -@subsection FileStream class:@- standard streams +@node FilePath-converting +@subsection FilePath:@- converting @table @b -@meindex stderr -@item stderr -Answer a FileStream that is attached the Smalltalk program's standard -error file handle, which can be used for error messages and diagnostics -issued by the program. +@meindex asFile +@item asFile +Answer the receiver. -@meindex stdin -@item stdin -Answer a FileStream that is attached the Smalltalk program's standard -input file handle, which is the normal source of input for the program. +@end table -@meindex stdout -@item stdout -Answer a FileStream that is attached the Smalltalk program's standard -output file handle; this is used for normal output from the program. + +@node FilePath-decoration +@subsection FilePath:@- decoration + +@table @b +@meindex all +@item all +Return a decorator of the receiver that will provide recursive +descent into directories for iteration methods. @end table -@node FileStream-basic -@subsection FileStream:@- basic +@node FilePath-directory operations +@subsection FilePath:@- directory operations @table @b -@meindex bufferStart -@item bufferStart -Private - Answer the offset from the start of the file corresponding -to the beginning of the read buffer. +@meindex nameAt:@- +@item nameAt:@- aName +Answer a FilePath for a file named `aName' residing in the directory +represented by the receiver. -@meindex copyFrom:@-to:@- -@item copyFrom:@- from to:@- to -Answer the contents of the file between the two given positions +@end table -@meindex next -@item next -Return the next character in the file, or nil at eof +@node FilePath-enumerating +@subsection FilePath:@- enumerating -@meindex nextByte -@item nextByte -Return the next byte in the file, or nil at eof +@table @b +@meindex allFilesMatching:@-do:@- +@slindex match:@- +@item allFilesMatching:@- aPattern do:@- aBlock +Evaluate aBlock on the File objects that match aPattern (according to +String>>@-#match:@-) in the directory named by the receiver. Recursively +descend into directories. -@meindex nextPut:@- -@item nextPut:@- aCharacter -Store aCharacter on the file +@meindex directories +@item directories +Answer an Array with Directory objects for the subdirectories +of the directory represented by the receiver. -@meindex peek -@item peek -Return the next character in the file, or nil at eof. -Don't advance the file pointer. +@meindex do:@- +@item do:@- aBlock +Evaluate aBlock once for each file in the directory represented by the +receiver, passing its name. -@meindex position -@item position -Answer the zero-based position from the start of the file +@meindex entries +@item entries +Answer an Array with File or Directory objects for the contents +of the directory represented by the receiver. -@meindex position:@- -@item position:@- n -Set the file pointer to the zero-based position n +@meindex entryNames +@item entryNames +Answer an Array with the names of the files in the directory +represented by the receiver. + + +@meindex files +@item files +Answer an Array with File objects for the contents of the directory +represented by the receiver. + + +@meindex filesMatching:@- +@item filesMatching:@- aPattern +Evaluate aBlock once for each file in the directory represented by the +receiver, passing a File or Directory object to aBlock. Returns the +*names* of the files for which aBlock returns true. + + +@meindex filesMatching:@-do:@- +@slindex match:@- +@item filesMatching:@- aPattern do:@- block +Evaluate block on the File objects that match aPattern (according to +String>>@-#match:@-) in the directory named by the receiver. + + +@meindex namesDo:@- +@item namesDo:@- aBlock +Evaluate aBlock once for each file in the directory represented by the +receiver, passing its name. + + +@meindex namesMatching:@-do:@- +@slindex match:@- +@item namesMatching:@- aPattern do:@- block +Evaluate block on the file names that match aPattern (according to +String>>@-#match:@-) in the directory named by the receiver. + + +@meindex reject:@- +@item reject:@- aBlock +Evaluate aBlock once for each file in the directory represented by the +receiver, passing a File or Directory object to aBlock. Returns the +*names* of the files for which aBlock returns true. + + +@meindex select:@- +@item select:@- aBlock +Evaluate aBlock once for each file in the directory represented by the +receiver, passing a File or Directory object to aBlock. Returns the +*names* of the files for which aBlock returns true. + + +@end table + + + +@node FilePath-file name management +@subsection FilePath:@- file name management + +@table @b +@meindex directory +@item directory +Answer the Directory object for the receiver's path + + +@meindex extension +@item extension +Answer the extension of the receiver + + +@meindex full +@item full +Answer the full name of the receiver, resolving the `.' and +`..' directory entries, and answer the result. Answer nil if the +name is invalid (such as '/usr/../../badname') + + +@meindex name +@item name +Answer the full path to the receiver + + +@meindex parent +@item parent +Answer the Directory object for the receiver's path + + +@meindex path +@item path +Answer the path (if any) of the receiver + + +@meindex stripExtension +@item stripExtension +Answer the path (if any) and file name of the receiver + + +@meindex stripFileName +@item stripFileName +Answer the path of the receiver, always including a directory +name (possibly `.') and the final directory separator + + +@meindex stripPath +@item stripPath +Answer the file name and extension (if any) of the receiver + + +@end table + + + +@node FilePath-file operations +@subsection FilePath:@- file operations + +@table @b +@meindex contents +@item contents +Open a read-only FileStream on the receiver, read its contents, +close the stream and answer the contents + + +@meindex fileIn +@item fileIn +File in the receiver + + +@meindex open:@- +@item open:@- mode +Open the receiver in the given mode (as answered by FileStream's +class constant methods) + + +@meindex open:@-ifFail:@- +@item open:@- mode ifFail:@- aBlock +Open the receiver in the given mode (as answered by FileStream's +class constant methods). Upon failure, evaluate aBlock. + + +@meindex open:@-mode:@-ifFail:@- +@item open:@- class mode:@- mode ifFail:@- aBlock +Open the receiver in the given mode (as answered by FileStream's +class constant methods) + + +@meindex openDescriptor:@- +@item openDescriptor:@- mode +Open the receiver in the given mode (as answered by FileStream's +class constant methods) + + +@meindex openDescriptor:@-ifFail:@- +@item openDescriptor:@- mode ifFail:@- aBlock +Open the receiver in the given mode (as answered by FileStream's +class constant methods). Upon failure, evaluate aBlock. + + +@meindex pathFrom:@- +@item pathFrom:@- dirName +Compute the relative path from the directory dirName to the receiver + + +@meindex readStream +@item readStream +Open a read-only FileStream on the receiver + + +@meindex remove +@item remove +Remove the file identified by the receiver + + +@meindex renameTo:@- +@item renameTo:@- newName +Rename the file identified by the receiver to newName + + +@meindex symlinkAs:@- +@item symlinkAs:@- destName +Create destName as a symbolic link of the receiver. The appropriate +relative path is computed automatically. + + +@meindex symlinkFrom:@- +@item symlinkFrom:@- srcName +Create the receiver as a symbolic link from srcName (relative to the +path of the receiver). + + +@meindex touch +@item touch +Update the timestamp of the file corresponding to the receiver. + + +@meindex withReadStreamDo:@- +@item withReadStreamDo:@- aBlock +Invoke aBlock with a reading stream open on me, closing it +when the dynamic extent of aBlock ends. + + +@meindex withWriteStreamDo:@- +@item withWriteStreamDo:@- aBlock +Invoke aBlock with a writing stream open on me, closing it +when the dynamic extent of aBlock ends. + + +@meindex writeStream +@item writeStream +Open a write-only FileStream on the receiver + + +@end table + + + +@node FilePath-printing +@subsection FilePath:@- printing + +@table @b +@meindex displayOn:@- +@item displayOn:@- aStream +Print a representation of the receiver on aStream. + + +@meindex printOn:@- +@item printOn:@- aStream +Print a representation of the receiver on aStream. + + +@end table + + + +@node FilePath-still unclassified +@subsection FilePath:@- still unclassified + +@table @b +@meindex / +@item / aName +Answer a File or Directory object as appropriate for a file named +'aName' in the directory represented by the receiver. + + +@end table + + + +@node FilePath-testing +@subsection FilePath:@- testing + +@table @b +@meindex exists +@item exists +Answer whether a file with the name contained in the receiver does exist. + + +@meindex isAbsolute +@item isAbsolute +Answer whether the receiver identifies an absolute path. + + +@meindex isAccessible +@item isAccessible +Answer whether a directory with the name contained in the receiver does +exist and can be accessed + + +@meindex isDirectory +@item isDirectory +Answer whether a file with the name contained in the receiver does exist +and identifies a directory. + + +@meindex isExecutable +@item isExecutable +Answer whether a file with the name contained in the receiver does exist +and is executable + + +@meindex isFile +@item isFile +Answer whether a file with the name contained in the receiver does exist +and does not identify a directory. + + +@meindex isFileSystemPath +@item isFileSystemPath +Answer whether the receiver corresponds to a real filesystem path. + + +@meindex isReadable +@item isReadable +Answer whether a file with the name contained in the receiver does exist +and is readable + + +@meindex isRelative +@item isRelative +Answer whether the receiver identifies a relative path. + + +@meindex isSymbolicLink +@item isSymbolicLink +Answer whether a file with the name contained in the receiver does exist +and identifies a symbolic link. + + +@meindex isWriteable +@item isWriteable +Answer whether a file with the name contained in the receiver does exist +and is writeable + + +@end table + + + +@node FilePath-virtual filesystems +@subsection FilePath:@- virtual filesystems + +@table @b +@meindex zip +@item zip +Not commented. + +@end table + +@node FileSegment +@section FileSegment +@clindex FileSegment + +@table @b +@item Defined in namespace Smalltalk +@itemx Superclass: Object +@itemx Category: Language-Implementation +My instances represent sections of files. I am primarily used by the +compiler to record source code locations. I am not a part of the normal +Smalltalk-80 kernel; I am specific to the GNU Smalltalk implementation. +@end table + +@menu +* FileSegment class-basic:: (class) +* FileSegment class-installing:: (class) +* FileSegment-basic:: (instance) +* FileSegment-equality:: (instance) +* FileSegment-printing:: (instance) +@end menu + + + +@node FileSegment class-basic +@subsection FileSegment class:@- basic + +@table @b +@meindex on:@-startingAt:@-for:@- +@item on:@- aFile startingAt:@- startPos for:@- sizeInteger +Create a new FileSegment referring to the contents of the given file, +from the startPos-th byte and for sizeInteger bytes. Note that +FileSegments should always be created with full paths because +relative paths are interpreted to be relative to the kernel +directory. + + +@end table + + + +@node FileSegment class-installing +@subsection FileSegment class:@- installing + +@table @b +@meindex relocate +@item relocate +Remove the kernel path from all paths that start with it. Needed to +support $(DESTDIR) and relocatable installation. + + +@end table + + + +@node FileSegment-basic +@subsection FileSegment:@- basic + +@table @b +@meindex asString +@item asString +Answer a String containing the required segment of the file + + +@meindex copyFrom:@-to:@- +@item copyFrom:@- from to:@- to +Answer a String containing the given subsegment of the file. As for +streams, from and to are 0-based. + + +@meindex file +@item file +Answer the File object for the file containing the segment + + +@meindex fileName +@item fileName +Answer the name of the file containing the segment + + +@meindex filePos +@item filePos +Answer the position in the file where the segment starts + + +@meindex relocateFrom:@-map:@- +@item relocateFrom:@- startPath map:@- map +If the path starts with startPath, remove that part of the path. +map is a Dictionary that is used so that equal filenames stay equal, +without increasing the amount of memory that the image uses. + + +@meindex size +@item size +Answer the length of the segment + + +@meindex withFileDo:@- +@item withFileDo:@- aBlock +Evaluate aBlock passing it the FileStream in which the segment +identified by the receiver is stored + + +@end table + + + +@node FileSegment-equality +@subsection FileSegment:@- equality + +@table @b +@meindex = +@item = aFileSegment +Answer whether the receiver and aFileSegment are equal. + + +@meindex hash +@item hash +Answer an hash value for the receiver. + + +@end table + + + +@node FileSegment-printing +@subsection FileSegment:@- printing + +@table @b +@meindex printedFileName +@item printedFileName +Answer a printed representation of the file containing the segment. +While introducing some ambiguity, this representation is compact +eliminates the path for kernel files, and produces a relative path +from the current working directory for other files. + + +@end table + +@node FileStream +@section FileStream +@clindex FileStream + +@table @b +@item Defined in namespace Smalltalk +@itemx Superclass: FileDescriptor +@itemx Category: Streams-Files +My instances are what conventional programmers think of as files. +My instance creation methods accept the name of a disk file (or any named +file object, such as /dev/rmt0 on UNIX or MTA0:@- on VMS). +@end table + +@menu +* FileStream class-file-in:: (class) +* FileStream class-standard streams:: (class) +* FileStream-basic:: (instance) +* FileStream-buffering:: (instance) +* FileStream-compiling:: (instance) +* FileStream-initialize-release:: (instance) +* FileStream-overriding inherited methods:: (instance) +* FileStream-testing:: (instance) +@end menu + + + +@node FileStream class-file-in +@subsection FileStream class:@- file-in + +@table @b +@meindex fileIn:@- +@item fileIn:@- aFileName +File in the aFileName file. During a file in operation, global variables +(starting with an uppercase letter) that are not declared yet don't yield +an `unknown variable' error. Instead, they are defined as nil in the +`Undeclared' dictionary (a global variable residing in Smalltalk). +As soon as you add the variable to a namespace (for example by creating +a class) the Association will be removed from Undeclared and reused +in the namespace, so that the old references will automagically point +to the new value. + + +@meindex fileIn:@-ifMissing:@- +@item fileIn:@- aFileName ifMissing:@- aSymbol +Conditionally do a file in, only if the key (often a class) specified +by 'aSymbol' is not present in the Smalltalk system dictionary already. +During a file in operation, global variables (starting with an +uppercase letter) that are not declared don't yield an `unknown +variable' error. Instead, they are defined as nil in the `Undeclared' +dictionary (a global variable residing in Smalltalk). +As soon as you add the variable to a namespace (for example by creating +a class) the Association will be removed from Undeclared and reused +in the namespace, so that the old references will automagically point +to the new value. + + +@meindex fileIn:@-ifTrue:@- +@item fileIn:@- aFileName ifTrue:@- aBoolean +Conditionally do a file in, only if the supplied boolean is true. +During a file in operation, global variables (starting with an +uppercase letter) that are not declared don't yield an `unknown +variable' error. Instead, they are defined as nil in the `Undeclared' +dictionary (a global variable residing in Smalltalk). +As soon as you add the variable to a namespace (for example by creating +a class) the Association will be removed from Undeclared and reused +in the namespace, so that the old references will automagically point +to the new value. + + +@meindex fileIn:@-line:@-from:@-at:@- +@item fileIn:@- aFileName line:@- lineInteger from:@- realFileName at:@- aCharPos +File in the aFileName file giving errors such as if it was loaded +from the given line, file name and starting position (instead of 1). + + +@meindex generateMakefileOnto:@- +@item generateMakefileOnto:@- aStream +Generate a make file for the file-ins since record was last set to true. +Store it on aStream + + +@meindex initialize +@item initialize +Private - Initialize the receiver's class variables + + +@meindex record:@- +@slindex generateMakefileOnto:@- +@item record:@- recordFlag +Set whether Smalltalk should record information about nested file-ins. +When recording is enabled, use @-#generateMakefileOnto:@- to automatically +generate a valid makefile for the intervening file-ins. + + +@meindex require:@- +@item require:@- assoc +Conditionally do a file in from the value of assoc, only if the +key of assoc is not present in the Smalltalk system dictionary already. +During a file in operation, global variables (starting with an +uppercase letter) that are not declared don't yield an `unknown +variable' error. Instead, they are defined as nil in the `Undeclared' +dictionary (a global variable residing in Smalltalk). +As soon as you add the variable to a namespace (for example by creating +a class) the Association will be removed from Undeclared and reused +in the namespace, so that the old references will automagically point +to the new value. + + +@meindex verbose:@- +@item verbose:@- verboseFlag +Set whether Smalltalk should output debugging messages when filing in + + +@end table + + + +@node FileStream class-standard streams +@subsection FileStream class:@- standard streams + +@table @b +@meindex stderr +@item stderr +Answer a FileStream that is attached the Smalltalk program's standard +error file handle, which can be used for error messages and diagnostics +issued by the program. + + +@meindex stdin +@item stdin +Answer a FileStream that is attached the Smalltalk program's standard +input file handle, which is the normal source of input for the program. + + +@meindex stdout +@item stdout +Answer a FileStream that is attached the Smalltalk program's standard +output file handle; this is used for normal output from the program. + + +@end table + + + +@node FileStream-basic +@subsection FileStream:@- basic + +@table @b +@meindex bufferStart +@item bufferStart +Private - Answer the offset from the start of the file corresponding +to the beginning of the read buffer. + + +@meindex copyFrom:@-to:@- +@item copyFrom:@- from to:@- to +Answer the contents of the file between the two given positions + + +@meindex next +@item next +Return the next character in the file, or nil at eof + + +@meindex nextPut:@- +@item nextPut:@- aCharacter +Store aCharacter on the file + + +@meindex peek +@item peek +Return the next character in the file, or nil at eof. +Don't advance the file pointer. + + +@meindex position +@item position +Answer the zero-based position from the start of the file + + +@meindex position:@- +@item position:@- n +Set the file pointer to the zero-based position n @meindex size @@ -13606,18 +14342,16 @@ n characters of aCollection in the buffer, starting from the pos-th. -@meindex next:@-into:@- -@item next:@- anInteger into:@- answer -Private - Read up to anInteger bytes from the stream and store them -into answer. Return `answer' itself, possibly truncated if we could not -read the full amount of data. +@meindex nextAvailable:@-into:@-startingAt:@- +@item nextAvailable:@- anInteger into:@- aCollection startingAt:@- pos +Read up to anInteger bytes from the stream and store them +into aCollection. Return the number of bytes read. -@meindex nextHunk -@item nextHunk -Answer the next buffers worth of stuff in the Stream represented -by the receiver. For n consecutive calls to this method, we do -n - 1 or n actual input operation. +@meindex nextAvailable:@-putAllOn:@- +@item nextAvailable:@- anInteger putAllOn:@- aStream +Copy up to anInteger bytes from the stream into +aStream. Return the number of bytes read. @meindex pendingWrite @@ -13644,25 +14378,28 @@ -@node FileStream-overriding inherited methods -@subsection FileStream:@- overriding inherited methods +@node FileStream-initialize-release +@subsection FileStream:@- initialize-release @table @b -@meindex next:@- -@item next:@- anInteger -Return the next 'anInteger' characters from the stream, as a String. +@meindex initialize +@item initialize +Initialize the receiver's instance variables +@end table + + + +@node FileStream-overriding inherited methods +@subsection FileStream:@- overriding inherited methods + +@table @b @meindex next:@-putAll:@-startingAt:@- @item next:@- n putAll:@- aCollection startingAt:@- pos Write n values from aCollection, the first being at pos. -@meindex nextByteArray:@- -@item nextByteArray:@- anInteger -Return the next 'anInteger' bytes from the stream, as a ByteArray. - - @meindex nextLine @item nextLine Returns a collection of the same type that the stream accesses, containing @@ -13670,6 +14407,18 @@ stream's contents if no new-line character is found. +@meindex nextPutAllOn:@- +@item nextPutAllOn:@- aStream +Put all the characters of the receiver in aStream. + + +@meindex upTo:@- +@item upTo:@- aCharacter +Returns a collection of the same type that the stream accesses, +containing data up to aCharacter. Returns the entire rest of +the stream's contents if no such character is found. + + @end table @@ -16281,6 +17030,159 @@ @end table +@node Iterable +@section Iterable +@clindex Iterable + +@table @b +@item Defined in namespace Smalltalk +@itemx Superclass: Object +@itemx Category: Collections +I am an abstract class. My instances are collections of objects +that can be iterated. The details on how they can be mutated (if at +all possible) are left to the subclasses. +@end table + +@menu +* Iterable class-multibyte encodings:: (class) +* Iterable-enumeration:: (instance) +* Iterable-streaming:: (instance) +@end menu + + + +@node Iterable class-multibyte encodings +@subsection Iterable class:@- multibyte encodings + +@table @b +@meindex isUnicode +@item isUnicode +Answer true; the receiver is able to store arbitrary +Unicode characters. + + +@end table + + + +@node Iterable-enumeration +@subsection Iterable:@- enumeration + +@table @b +@meindex allSatisfy:@- +@item allSatisfy:@- aBlock +Search the receiver for an element for which aBlock returns false. +Answer true if none does, false otherwise. + + +@meindex anySatisfy:@- +@item anySatisfy:@- aBlock +Search the receiver for an element for which aBlock returns true. +Answer true if some does, false otherwise. + + +@meindex collect:@- +@item collect:@- aBlock +Answer a new instance of a Collection containing all the results +of evaluating aBlock passing each of the receiver's elements + + +@meindex conform:@- +@item conform:@- aBlock +Search the receiver for an element for which aBlock returns false. +Answer true if none does, false otherwise. + + +@meindex contains:@- +@item contains:@- aBlock +Search the receiver for an element for which aBlock returns true. +Answer true if some does, false otherwise. + + +@meindex count:@- +@item count:@- aBlock +Count the elements of the receiver for which aBlock returns true, +and return their number. + + +@meindex detect:@- +@item detect:@- aBlock +Search the receiver for an element for which aBlock returns true. +If some does, answer it. If none does, fail + + +@meindex detect:@-ifNone:@- +@item detect:@- aBlock ifNone:@- exceptionBlock +Search the receiver for an element for which aBlock returns true. +If some does, answer it. If none does, answer the result of evaluating +aBlock + + +@meindex do:@- +@item do:@- aBlock +Enumerate each object of the receiver, passing them to aBlock + + +@meindex do:@-separatedBy:@- +@item do:@- aBlock separatedBy:@- separatorBlock +Enumerate each object of the receiver, passing them to aBlock. +Between every two invocations of aBlock, invoke separatorBlock + + +@meindex fold:@- +@item fold:@- binaryBlock +First, pass to binaryBlock the first and second elements of the +receiver; for each subsequent element, pass the result of the previous +evaluation and an element. Answer the result of the last invocation, +or the first element if the collection has size 1. Fail if the collection +is empty. + + +@meindex inject:@-into:@- +@item inject:@- thisValue into:@- binaryBlock +First, pass to binaryBlock thisValue and the first element of the +receiver; for each subsequent element, pass the result of the previous +evaluation and an element. Answer the result of the last invocation. + + +@meindex noneSatisfy:@- +@item noneSatisfy:@- aBlock +Search the receiver for an element for which aBlock returns true. +Answer true if none does, false otherwise. + + +@meindex reject:@- +@item reject:@- aBlock +Answer a new instance of a Collection containing all the elements +in the receiver which, when passed to aBlock, don't answer true + + +@meindex select:@- +@item select:@- aBlock +Answer a new instance of a Collection containing all the elements +in the receiver which, when passed to aBlock, answer true + + +@end table + + + +@node Iterable-streaming +@subsection Iterable:@- streaming + +@table @b +@meindex nextPutAllOn:@- +@item nextPutAllOn:@- aStream +Write all the objects in the receiver to aStream + + +@meindex readStream +@item readStream +Return a stream with the same contents as the receiver. + + +@end table + @node LargeArray @section LargeArray @clindex LargeArray @@ -18300,6 +19202,7 @@ * Metaclass class-instance creation:: (class) * Metaclass-accessing:: (instance) * Metaclass-basic:: (instance) +* Metaclass-compiling methods:: (instance) * Metaclass-delegation:: (instance) * Metaclass-filing:: (instance) * Metaclass-printing:: (instance) @@ -18376,6 +19279,19 @@ +@node Metaclass-compiling methods +@subsection Metaclass:@- compiling methods + +@table @b +@meindex poolResolution +@item poolResolution +Use my instance's poolResolution. + + +@end table + + + @node Metaclass-delegation @subsection Metaclass:@- delegation @@ -18396,6 +19312,12 @@ and in each of the superclasses' class pool dictionaries +@meindex allSharedPoolDictionariesDo:@- +@item allSharedPoolDictionariesDo:@- aBlock +Answer the shared pools visible from methods in the metaclass, +in the correct search order. + + @meindex allSharedPools @item allSharedPools Return the names of the shared pools defined by the class and any of @@ -18586,6 +19508,15 @@ created only by @-#ensure:@-. +@meindex mark +@slindex valueWithUnwind +@item mark +To create a valid execution environment for the interpreter even +before it starts, GST creates a fake context which invokes a special +``termination'' method. A similar context is created by +@-#valueWithUnwind, by using this method. + + @meindex sender @item sender Return the context from which the receiver was sent @@ -19084,6 +20015,7 @@ * NetClients.URL-copying:: (instance) * NetClients.URL-initialize-release:: (instance) * NetClients.URL-printing:: (instance) +* NetClients.URL-still unclassified:: (instance) * NetClients.URL-testing:: (instance) * NetClients.URL-utilities:: (instance) @end menu @@ -19372,6 +20304,22 @@ +@node NetClients.URL-still unclassified +@subsection NetClients.URL:@- still unclassified + +@table @b +@meindex contents +@item contents +Not commented. + +@meindex readStream +@item readStream +Not commented. + +@end table + + + @node NetClients.URL-testing @subsection NetClients.URL:@- testing @@ -21103,6 +22051,10 @@ @item isBehavior Answer `false'. +@meindex isCObject +@item isCObject +Answer `false'. + @meindex isCharacter @item isCharacter Answer `false'. @@ -21567,11 +22519,6 @@ return the last value). -@meindex snapshot:@- -@item snapshot:@- aString -Save an image on the aString file - - @meindex spaceGrowRate @item spaceGrowRate Answer the rate with which the amount of memory used by the system grows @@ -21612,6 +22559,11 @@ Save a snapshot on the image file that was loaded on startup. +@meindex snapshot:@- +@item snapshot:@- aString +Save an image on the aString file + + @end table @@ -21923,6 +22875,16 @@ Store anObject at the anIndex-th item of the receiver, answer anObject +@meindex first +@item first +Answer the first item of the receiver + + +@meindex last +@item last +Answer the last item of the receiver + + @meindex size @item size Return the number of objects in the receiver @@ -22202,6 +23164,26 @@ the package, to dir. +@meindex startScript +@item startScript +Answer the start script for the package. + + +@meindex startScript:@- +@item startScript:@- aString +Set the start script for the package to aString. + + +@meindex stopScript +@item stopScript +Answer the start script for the package. + + +@meindex stopScript:@- +@item stopScript:@- aString +Set the stop script for the package to aString. + + @meindex sunitScripts @item sunitScripts Answer a (modifiable) OrderedCollection of SUnit scripts that @@ -22262,7 +23244,7 @@ @meindex directoryFor:@- @item directoryFor:@- package -Answer a complete path to the given package's files +Answer a Directory object to the given package's files @meindex featuresFor:@- @@ -22967,6 +23949,7 @@ * PositionableStream-class type methods:: (instance) * PositionableStream-compiling:: (instance) * PositionableStream-positioning:: (instance) +* PositionableStream-still unclassified:: (instance) * PositionableStream-testing:: (instance) * PositionableStream-truncating:: (instance) @end menu @@ -23022,6 +24005,19 @@ Answer the next item of the receiver. Returns nil when at end of stream. +@meindex nextAvailable:@-into:@-startingAt:@- +@item nextAvailable:@- anInteger into:@- aCollection startingAt:@- pos +Place up to anInteger objects from the receiver into +aCollection, starting from position pos in the collection +and stopping if no more data is available. + + +@meindex nextAvailable:@-putAllOn:@- +@item nextAvailable:@- anInteger putAllOn:@- aStream +Copy up to anInteger objects from the receiver into +aStream, stopping if no more data is available. + + @meindex peek @item peek Returns the next element of the stream without moving the pointer. @@ -23138,15 +24134,17 @@ backwards. -@meindex skipSeparators -@slindex next -@slindex skipSeparators -@item skipSeparators -Advance the receiver until we find a character that is not a -separator. Answer false if we reach the end of the stream, -else answer true; in this case, sending @-#next will return the -first non-separator character (possibly the same to which the -stream pointed before @-#skipSeparators was sent). +@end table + + + +@node PositionableStream-still unclassified +@subsection PositionableStream:@- still unclassified + +@table @b +@meindex nextPutAllOn:@- +@item nextPutAllOn:@- aStream +Write all the objects in the receiver to aStream. @end table @@ -23352,41 +24350,199 @@ Resume the receiver's execution -@meindex singleStepWaitingOn:@- -@item singleStepWaitingOn:@- aSemaphore -Execute a limited amount of code (usually a bytecode, or up to the -next backward jump, or up to the next message send) of the receiver, -which must in a ready-to-run state (neither executing nor terminating -nor suspended), then restart running the current process. aSemaphore -is used as a means to synchronize the execution of the current process -and the receiver and should have no signals on it. The current process -should have higher priority than the receiver. +@meindex singleStepWaitingOn:@- +@item singleStepWaitingOn:@- aSemaphore +Execute a limited amount of code (usually a bytecode, or up to the +next backward jump, or up to the next message send) of the receiver, +which must in a ready-to-run state (neither executing nor terminating +nor suspended), then restart running the current process. aSemaphore +is used as a means to synchronize the execution of the current process +and the receiver and should have no signals on it. The current process +should have higher priority than the receiver. + + +@meindex suspend +@item suspend +Do nothing if we're already suspended. Note that the blue book made +suspend a primitive - but the real primitive is yielding control to +another process. Suspending is nothing more than taking ourselves out +of every scheduling list and THEN yielding control to another process + + +@meindex yield +@item yield +Yield control from the receiver to other processes + + +@end table + + + +@node Process-printing +@subsection Process:@- printing + +@table @b +@meindex printOn:@- +@item printOn:@- aStream +Print a representation of the receiver on aStream + + +@end table + +@node ProcessEnvironment +@section ProcessEnvironment +@clindex ProcessEnvironment + +@table @b +@item Defined in namespace Smalltalk +@itemx Superclass: Object +@itemx Category: Language-Processes +I represent a proxy for thread-local variables defined for +Smalltalk processes. Associations requested to me retrieve the thread-local +value for the current process. For now, I don't provide the full protocol of +a Dictionary; in particular the iteration protocol is absent. +@end table + +@menu +* ProcessEnvironment class-disabled:: (class) +* ProcessEnvironment class-singleton:: (class) +* ProcessEnvironment-accessing:: (instance) +* ProcessEnvironment-dictionary removing:: (instance) +* ProcessEnvironment-dictionary testing:: (instance) +@end menu + + + +@node ProcessEnvironment class-disabled +@subsection ProcessEnvironment class:@- disabled + +@table @b +@meindex new +@item new +This method should not be called for instances of this class. + +@end table + + + +@node ProcessEnvironment class-singleton +@subsection ProcessEnvironment class:@- singleton + +@table @b +@meindex uniqueInstance +@item uniqueInstance +Return the singleton instance of ProcessEnvironment. + + +@end table + + + +@node ProcessEnvironment-accessing +@subsection ProcessEnvironment:@- accessing + +@table @b +@meindex add:@- +@item add:@- newObject +Add the newObject association to the receiver + + +@meindex associationAt:@- +@item associationAt:@- key +Answer the value associated to the given key, or the result of evaluating +aBlock if the key is not found + + +@meindex associationAt:@-ifAbsent:@- +@item associationAt:@- key ifAbsent:@- aBlock +Answer the value associated to the given key, or the result of evaluating +aBlock if the key is not found + + +@meindex at:@- +@item at:@- key +Answer the value associated to the given key. Return nil if the key +is not found + + +@meindex at:@-ifAbsent:@- +@item at:@- key ifAbsent:@- aBlock +Answer the value associated to the given key, or the result of evaluating +aBlock if the key is not found + + +@meindex at:@-ifAbsentPut:@- +@item at:@- key ifAbsentPut:@- aBlock +Answer the value associated to the given key, setting it to +the result of evaluating aBlock if the key is not found. + + +@meindex at:@-ifPresent:@- +@item at:@- key ifPresent:@- aBlock +Answer the value associated to the given key, or the result of evaluating +aBlock if the key is not found + + +@meindex at:@-put:@- +@item at:@- key put:@- value +Store value as associated to the given key + + +@meindex keys +@item keys +Answer a kind of Set containing the keys of the receiver + + +@end table + + + +@node ProcessEnvironment-dictionary removing +@subsection ProcessEnvironment:@- dictionary removing + +@table @b +@meindex remove:@- +@item remove:@- anAssociation +Remove anAssociation's key from the dictionary + + +@meindex remove:@-ifAbsent:@- +@item remove:@- anAssociation ifAbsent:@- aBlock +Remove anAssociation's key from the dictionary + + +@meindex removeAllKeys:@- +@item removeAllKeys:@- keys +Remove all the keys in keys, without raising any errors -@meindex suspend -@item suspend -Do nothing if we're already suspended. Note that the blue book made -suspend a primitive - but the real primitive is yielding control to -another process. Suspending is nothing more than taking ourselves out -of every scheduling list and THEN yielding control to another process +@meindex removeAllKeys:@-ifAbsent:@- +@item removeAllKeys:@- keys ifAbsent:@- aBlock +Remove all the keys in keys, passing the missing keys as parameters +to aBlock as they're encountered -@meindex yield -@item yield -Yield control from the receiver to other processes +@meindex removeKey:@- +@item removeKey:@- aSymbol +Remove the aSymbol key from the dictionary + + +@meindex removeKey:@-ifAbsent:@- +@item removeKey:@- aSymbol ifAbsent:@- aBlock +Remove the aSymbol key from the dictionary @end table -@node Process-printing -@subsection Process:@- printing +@node ProcessEnvironment-dictionary testing +@subsection ProcessEnvironment:@- dictionary testing @table @b -@meindex printOn:@- -@item printOn:@- aStream -Print a representation of the receiver on aStream +@meindex includesKey:@- +@item includesKey:@- key +Answer whether the receiver contains the given key @end table @@ -23447,6 +24603,17 @@ Answer the active process +@meindex processEnvironment +@slindex associationAt:@- +@item processEnvironment +Answer another singleton object hosting thread-local variables +for the Smalltalk processes. This acts like a normal Dictionary +with a couple of differences:@- a) using @-#associationAt:@- will +return special associations that retrieve a thread-local value; +b) requesting missing keys will return nil, and removing them +will be a nop. + + @meindex processesAt:@- @item processesAt:@- aPriority Answer a linked list of processes at the given priority @@ -23666,7 +24833,7 @@ @meindex signal:@-onInterrupt:@- @item signal:@- aSemaphore onInterrupt:@- anIntegerSignalNumber -Private - signal 'aSemaphore' when the given C signal occurs +Signal 'aSemaphore' when the given C signal occurs. @end table @@ -24635,6 +25802,12 @@ @subsection RegexResults:@- accessing @table @b +@meindex asArray +@item asArray +If the regular expression was matched, return an Array with +the subexpressions that were present in the regular expression. + + @meindex at:@- @item at:@- anIndex If the regular expression was matched, return the text of the @@ -25538,11 +26711,13 @@ @menu * SequenceableCollection class-instance creation:: (class) * SequenceableCollection-basic:: (instance) +* SequenceableCollection-comparing:: (instance) * SequenceableCollection-concatenating:: (instance) * SequenceableCollection-copying SequenceableCollections:: (instance) * SequenceableCollection-enumerating:: (instance) * SequenceableCollection-replacing items:: (instance) * SequenceableCollection-sorting:: (instance) +* SequenceableCollection-still unclassified:: (instance) * SequenceableCollection-testing:: (instance) @end menu @@ -25764,23 +26939,28 @@ -@node SequenceableCollection-concatenating -@subsection SequenceableCollection:@- concatenating +@node SequenceableCollection-comparing +@subsection SequenceableCollection:@- comparing @table @b -@meindex join -@item join -Answer a new collection like my first element, with all the -elements (in order) of all my elements, which should be -collections. +@meindex endsWith:@- +@item endsWith:@- aSequenceableCollection +Returns true if the receiver ends with the same characters as aSequenceableCollection. -I use my first element instead of myself as a prototype because -my elements are more likely to share the desired properties than -I am, such as in:@- -@-#('hello, ' 'world') join => 'hello, world' +@meindex startsWith:@- +@item startsWith:@- aSequenceableCollection +Returns true if the receiver starts with the same characters as aSequenceableCollection. + + +@end table + +@node SequenceableCollection-concatenating +@subsection SequenceableCollection:@- concatenating + +@table @b @meindex join:@- @item join:@- sepCollection Answer a new collection like my first element, with all the @@ -26086,6 +27266,19 @@ +@node SequenceableCollection-still unclassified +@subsection SequenceableCollection:@- still unclassified + +@table @b +@meindex nextPutAllOn:@- +@item nextPutAllOn:@- aStream +Write all the objects in the receiver to aStream + + +@end table + + + @node SequenceableCollection-testing @subsection SequenceableCollection:@- testing @@ -27051,7 +28244,7 @@ @table @b @item Defined in namespace Smalltalk -@itemx Superclass: Object +@itemx Superclass: Iterable @itemx Category: Streams I am an abstract class that provides interruptable sequential access to objects. I can return successive objects from a source, or accept @@ -27064,6 +28257,7 @@ * Stream-accessing-reading:: (instance) * Stream-accessing-writing:: (instance) * Stream-basic:: (instance) +* Stream-buffering:: (instance) * Stream-built ins:: (instance) * Stream-character writing:: (instance) * Stream-concatenating:: (instance) @@ -27073,7 +28267,9 @@ * Stream-polymorphism:: (instance) * Stream-positioning:: (instance) * Stream-printing:: (instance) +* Stream-still unclassified:: (instance) * Stream-storing:: (instance) +* Stream-streaming protocol:: (instance) * Stream-testing:: (instance) @end menu @@ -27106,8 +28302,30 @@ @meindex nextAvailable:@- @item nextAvailable:@- anInteger -Return up to anInteger objects in the receiver, stopping if -the end of the stream is reached +Return up to anInteger objects in the receiver. Besides stopping if +the end of the stream is reached, this may return less than this +number of bytes for various reasons. For example, on files and sockets +this operation could be non-blocking, or could do at most one I/O +operation. + + +@meindex nextAvailable:@-into:@-startingAt:@- +@item nextAvailable:@- anInteger into:@- aCollection startingAt:@- pos +Place the next anInteger objects from the receiver into aCollection, +starting at position pos. Return the number of items stored. +Besides stopping if the end of the stream is reached, this may +return less than this number of bytes for various reasons. +For example, on files and sockets this operation could be +non-blocking, or could do at most one I/O operation. + + +@meindex nextAvailable:@-putAllOn:@- +@item nextAvailable:@- anInteger putAllOn:@- aStream +Copy up to anInteger objects in the receiver to aStream. Besides +stopping if the end of the stream is reached, this may return +less than this number of bytes for various reasons. For example, +on files and sockets this operation could be non-blocking, +or could do at most one I/O operation. @meindex nextLine @@ -27205,6 +28423,28 @@ +@node Stream-buffering +@subsection Stream:@- buffering + +@table @b +@meindex next:@-into:@-startingAt:@- +@item next:@- anInteger into:@- answer startingAt:@- pos +Read up to anInteger bytes from the stream and store them +into answer. Return the number of bytes that were read, raising +an exception if we could not read the full amount of data. + + +@meindex next:@-putAllOn:@- +@item next:@- anInteger putAllOn:@- aStream +Read up to anInteger bytes from the stream and store them +into aStream. Return the number of bytes that were read, raising +an exception if we could not read the full amount of data. + + +@end table + + + @node Stream-built ins @subsection Stream:@- built ins @@ -27222,6 +28462,14 @@ to the new value. +@meindex fileInLine:@-file:@-at:@- +@slindex line +@slindex fileIn +@item fileInLine:@- lineNum file:@- aFile at:@- charPosInt +Private - Much like a preprocessor @-#line directive; it is used internally +by @-#fileIn, and explicitly by the Emacs Smalltalk mode. + + @meindex fileInLine:@-fileName:@-at:@- @slindex line @slindex fileIn @@ -27376,22 +28624,6 @@ with possibly surprising results. -@meindex fold:@- -@item fold:@- aBlock -First, pass to binaryBlock the first and second elements of the -receiver; for each subsequent element, pass the result of the previous -evaluation and an element. Answer the result of the last invocation, -or the first element if the stream has a single element. - - -@meindex inject:@-into:@- -@item inject:@- value into:@- aBlock -First, pass to binaryBlock value and the first element of the -receiver; for each subsequent element, pass the result of the previous -evaluation and an element. Answer the result of the last invocation, -or value if the stream is empty. - - @meindex lines @item lines Answer a new stream that answers lines from the receiver. @@ -27461,20 +28693,22 @@ Answer true if the stream supports moving backwards with @-#skip:@-. -@meindex nextHunk -@item nextHunk -Answer a more-or-less arbitrary amount of data. When used on files, this -does at most one I/O operation. For other kinds of stream, the definition -may vary. This method is used by the VM when loading data from a Smalltalk -stream, and by various kind of Stream decorators supplied with GNU -Smalltalk (including zlib streams). - - @meindex skip:@- @item skip:@- anInteger Move the position forwards by anInteger places +@meindex skipSeparators +@slindex next +@slindex skipSeparators +@item skipSeparators +Advance the receiver until we find a character that is not a +separator. Answer false if we reach the end of the stream, +else answer true; in this case, sending @-#next will return the +first non-separator character (possibly the same to which the +stream pointed before @-#skipSeparators was sent). + + @meindex skipTo:@- @item skipTo:@- anObject Move the current position to after the next occurrence of anObject @@ -27524,6 +28758,19 @@ +@node Stream-still unclassified +@subsection Stream:@- still unclassified + +@table @b +@meindex nextPutAllOn:@- +@item nextPutAllOn:@- aStream +Write all the objects in the receiver to aStream + + +@end table + + + @node Stream-storing @subsection Stream:@- storing @@ -27539,6 +28786,22 @@ +@node Stream-streaming protocol +@subsection Stream:@- streaming protocol + +@table @b +@meindex nextAvailablePutAllOn:@- +@item nextAvailablePutAllOn:@- aStream +Copy to aStream a more-or-less arbitrary amount of data. When used +on files, this does at most one I/O operation. For other kinds of +stream, the definition may vary. This method is used to do +stream-to-stream copies. + + +@end table + + + @node Stream-testing @subsection Stream:@- testing @@ -27595,6 +28858,7 @@ * String-basic:: (instance) * String-built ins:: (instance) * String-converting:: (instance) +* String-filesystem:: (instance) * String-printing:: (instance) * String-regex:: (instance) * String-testing functionality:: (instance) @@ -27666,7 +28930,7 @@ @meindex = -@item = aString +@item = aCollection Answer whether the receiver's items match those in aCollection @@ -27710,14 +28974,6 @@ Answer an hash value for the receiver -@meindex primReplaceFrom:@-to:@-with:@-startingAt:@- -@item primReplaceFrom:@- start to:@- stop with:@- replacementString startingAt:@- replaceStart -Private - Replace the characters from start to stop with new -characters contained in replacementString (which, actually, can be -any variable byte class, starting at the replaceStart location of -replacementString - - @meindex replaceFrom:@-to:@-with:@-startingAt:@- @item replaceFrom:@- start to:@- stop with:@- aString startingAt:@- replaceStart Replace the characters from start to stop with new characters whose @@ -27777,6 +29033,25 @@ +@node String-filesystem +@subsection String:@- filesystem + +@table @b +@meindex / +@item / aName +Answer a File object as appropriate for a file named +'aName' in the directory represented by the receiver. + + +@meindex asFile +@item asFile +Answer a File object for the file whose name is in the receiver. + + +@end table + + + @node String-printing @subsection String:@- printing @@ -27863,36 +29138,42 @@ @meindex copyFrom:@-to:@-replacingAllRegex:@-with:@- @slindex % -@item copyFrom:@- from to:@- to replacingAllRegex:@- pattern with:@- str +@item copyFrom:@- from to:@- to replacingAllRegex:@- pattern with:@- aStringOrBlock Returns the substring of the receiver between from and to. -Any match of pattern in that part of the string is replaced with -str after substituting %n sequences with the captured subexpressions -of the match (as in @-#%). +Any match of pattern in that part of the string is replaced +using aStringOrBlock as follows:@- if it is a block, a RegexResults +object is passed, while if it is a string, %n sequences are +replaced with the captured subexpressions of the match (as in @-#%). @meindex copyFrom:@-to:@-replacingRegex:@-with:@- @slindex % -@item copyFrom:@- from to:@- to replacingRegex:@- pattern with:@- str +@item copyFrom:@- from to:@- to replacingRegex:@- pattern with:@- aStringOrBlock Returns the substring of the receiver between from and to. If pattern has a match in that part of the string, the match -is replaced with str after substituting %n sequences with the -captured subexpressions of the match (as in @-#%). +is replaced using aStringOrBlock as follows:@- if it is +a block, a RegexResults object is passed, while if it is a string, +%n sequences are replaced with the captured subexpressions of the +match (as in @-#%). @meindex copyReplacingAllRegex:@-with:@- @slindex % -@item copyReplacingAllRegex:@- pattern with:@- str +@item copyReplacingAllRegex:@- pattern with:@- aStringOrBlock Returns the receiver after replacing all the matches of pattern (if -any) with str. %n sequences present in str are substituted with the -captured subexpressions of the match (as in @-#%). +any) using aStringOrBlock as follows:@- if it is a block, a RegexResults +object is passed, while if it is a string, %n sequences are +replaced with the captured subexpressions of the match (as in @-#%). @meindex copyReplacingRegex:@-with:@- @slindex % -@item copyReplacingRegex:@- pattern with:@- str +@item copyReplacingRegex:@- pattern with:@- aStringOrBlock Returns the receiver after replacing the first match of pattern (if -any) with str. %n sequences present in str are substituted with the -captured subexpressions of the match (as in @-#%). +any) using aStringOrBlock as follows:@- if it is a block, a +RegexResults object is passed, while if it is a string, %n +sequences are replaced with the captured subexpressions of the +match (as in @-#%). @meindex indexOfRegex:@- @@ -27983,19 +29264,23 @@ @meindex replacingAllRegex:@-with:@- @slindex % -@item replacingAllRegex:@- pattern with:@- str +@item replacingAllRegex:@- pattern with:@- aStringOrBlock Returns the receiver if the pattern has no match in it. Otherwise, -any match of pattern in that part of the string is replaced with -str after substituting %n sequences with the captured subexpressions -of the match (as in @-#%). +any match of pattern in that part of the string is replaced +using aStringOrBlock as follows:@- if it is a block, a RegexResults +object is passed, while if it is a string, %n sequences are +replaced with the captured subexpressions of the match (as +in @-#%). @meindex replacingRegex:@-with:@- @slindex % -@item replacingRegex:@- pattern with:@- str +@item replacingRegex:@- pattern with:@- aStringOrBlock Returns the receiver if the pattern has no match in it. If it has -a match, it is replaced with str after substituting %n sequences -with the captured subexpressions of the match (as in @-#%). +a match, it is replaced using aStringOrBlock as follows:@- if it is +a block, a RegexResults object is passed, while if it is a string, +%n sequences are replaced with the captured subexpressions of the +match (as in @-#%). @meindex searchRegex:@- @@ -29748,6 +31033,40 @@ @end table +@node SystemExceptions.UnhandledException +@section SystemExceptions.UnhandledException +@clindex SystemExceptions.UnhandledException + +@table @b +@item Defined in namespace Smalltalk.SystemExceptions +@itemx Superclass: Exception +@itemx Category: Language-Exception +I am raised when a backtrace is shown to terminate the +current process. +@end table + +@menu +* SystemExceptions.UnhandledException-accessing:: (instance) +@end menu + + + +@node SystemExceptions.UnhandledException-accessing +@subsection SystemExceptions.UnhandledException:@- accessing + +@table @b +@meindex defaultAction +@item defaultAction +Terminate the currrent process. + + +@meindex description +@item description +Answer a textual description of the exception. + + +@end table + @node SystemExceptions.UserInterrupt @section SystemExceptions.UserInterrupt @clindex SystemExceptions.UserInterrupt @@ -30880,6 +32199,7 @@ @menu * UnicodeCharacter class-built ins:: (class) +* UnicodeCharacter-coercion methods:: (instance) @end menu @@ -30904,6 +32224,19 @@ @end table + + +@node UnicodeCharacter-coercion methods +@subsection UnicodeCharacter:@- coercion methods + +@table @b +@meindex * +@item * aNumber +Returns a String with aNumber occurrences of the receiver. + + +@end table + @node UnicodeString @section UnicodeString @clindex UnicodeString @@ -31322,54 +32655,55 @@ @end table -@node VFS.ArchiveFileHandler -@section VFS.ArchiveFileHandler -@clindex VFS.ArchiveFileHandler +@node VFS.ArchiveFile +@section VFS.ArchiveFile +@clindex VFS.ArchiveFile @table @b @item Defined in namespace Smalltalk.VFS -@itemx Superclass: VFS.FileHandlerWrapper +@itemx Superclass: VFS.FileWrapper @itemx Category: Streams-Files -ArchiveFileHandler handles +ArchiveFile handles virtual filesystems that have a directory structure of their own. The directories and files in the archive are -instances of ArchiveMemberHandler, but the functionality -resides entirely in ArchiveFileHandler because the members +instances of ArchiveMember, but the functionality +resides entirely in ArchiveFile because the members will still ask the archive to get directory information on them, to extract them to a real file, and so on. @end table @menu -* VFS.ArchiveFileHandler-ArchiveMemberHandler protocol:: (instance) -* VFS.ArchiveFileHandler-directory operations:: (instance) -* VFS.ArchiveFileHandler-querying:: (instance) -* VFS.ArchiveFileHandler-TmpFileArchiveMemberHandler protocol:: (instance) +* VFS.ArchiveFile-ArchiveMember protocol:: (instance) +* VFS.ArchiveFile-directory operations:: (instance) +* VFS.ArchiveFile-querying:: (instance) +* VFS.ArchiveFile-still unclassified:: (instance) +* VFS.ArchiveFile-TmpFileArchiveMember protocol:: (instance) @end menu -@node VFS.ArchiveFileHandler-ArchiveMemberHandler protocol -@subsection VFS.ArchiveFileHandler:@- ArchiveMemberHandler protocol +@node VFS.ArchiveFile-ArchiveMember protocol +@subsection VFS.ArchiveFile:@- ArchiveMember protocol @table @b @meindex fillMember:@- @slindex size:@-stCtime:@-stMtime:@-stAtime:@-isDirectory:@- -@item fillMember:@- anArchiveMemberHandler -Extract the information on anArchiveMemberHandler. Answer +@item fillMember:@- anArchiveMember +Extract the information on anArchiveMember. Answer false if it actually does not exist in the archive; otherwise, -answer true after having told anArchiveMemberHandler about them +answer true after having told anArchiveMember about them by sending @-#size:@-stCtime:@-stMtime:@-stAtime:@-isDirectory:@- to it. @meindex member:@-do:@- -@item member:@- anArchiveMemberHandler do:@- aBlock +@item member:@- anArchiveMember do:@- aBlock Evaluate aBlock once for each file in the directory represented by -anArchiveMemberHandler, passing its name. +anArchiveMember, passing its name. @meindex member:@-mode:@- -@item member:@- anArchiveMemberHandler mode:@- bits -Set the permission bits for the file in anArchiveMemberHandler. +@item member:@- anArchiveMember mode:@- bits +Set the permission bits for the file in anArchiveMember. @meindex refresh @@ -31378,13 +32712,13 @@ @meindex removeMember:@- -@item removeMember:@- anArchiveMemberHandler -Remove the member represented by anArchiveMemberHandler. +@item removeMember:@- anArchiveMember +Remove the member represented by anArchiveMember. @meindex updateMember:@- -@item updateMember:@- anArchiveMemberHandler -Update the member represented by anArchiveMemberHandler by +@item updateMember:@- anArchiveMember +Update the member represented by anArchiveMember by copying the file into which it was extracted back to the archive. @@ -31393,18 +32727,24 @@ -@node VFS.ArchiveFileHandler-directory operations -@subsection VFS.ArchiveFileHandler:@- directory operations +@node VFS.ArchiveFile-directory operations +@subsection VFS.ArchiveFile:@- directory operations @table @b @meindex at:@- @item at:@- aName -Answer a VFSHandler for a file named `aName' residing in the directory +Answer a FilePath for a file named `aName' residing in the directory represented by the receiver. -@meindex do:@- -@item do:@- aBlock +@meindex nameAt:@- +@item nameAt:@- aString +Answer a FilePath for a file named `aName' residing in the directory +represented by the receiver. + + +@meindex namesDo:@- +@item namesDo:@- aBlock Evaluate aBlock once for each file in the directory represented by the receiver, passing its name. @@ -31419,8 +32759,8 @@ -@node VFS.ArchiveFileHandler-querying -@subsection VFS.ArchiveFileHandler:@- querying +@node VFS.ArchiveFile-querying +@subsection VFS.ArchiveFile:@- querying @table @b @meindex isAccessible @@ -31437,496 +32777,80 @@ @end table - -@node VFS.ArchiveFileHandler-TmpFileArchiveMemberHandler protocol -@subsection VFS.ArchiveFileHandler:@- TmpFileArchiveMemberHandler protocol - -@table @b -@meindex extractMember:@- -@item extractMember:@- anArchiveMemberHandler -Extract the contents of anArchiveMemberHandler into a file -that resides on disk, and answer the name of the file. - - -@meindex extractMember:@-into:@- -@item extractMember:@- anArchiveMemberHandler into:@- file -Extract the contents of anArchiveMemberHandler into a file -that resides on disk, and answer the name of the file. - - -@end table - -@node VFS.ArchiveMemberHandler -@section VFS.ArchiveMemberHandler -@clindex VFS.ArchiveMemberHandler - -@table @b -@item Defined in namespace Smalltalk.VFS -@itemx Superclass: VFS.VFSHandler -@itemx Category: Streams-Files -TmpFileArchiveMemberHandler is a handler -class for members of archive files that creates temporary files when -extracting files from an archive. -@end table - -@menu -* VFS.ArchiveMemberHandler-accessing:: (instance) -* VFS.ArchiveMemberHandler-directory operations:: (instance) -* VFS.ArchiveMemberHandler-file operations:: (instance) -* VFS.ArchiveMemberHandler-initializing:: (instance) -* VFS.ArchiveMemberHandler-testing:: (instance) -@end menu - - - -@node VFS.ArchiveMemberHandler-accessing -@subsection VFS.ArchiveMemberHandler:@- accessing - -@table @b -@meindex creationTime -@item creationTime -Answer the creation time of the file identified by the receiver. -On some operating systems, this could actually be the last change time -(the `last change time' has to do with permissions, ownership and the -like). - - -@meindex fullName -@slindex name -@item fullName -Answer the name of the file identified by the receiver as answered by -File>>@-#name. - - -@meindex lastAccessTime -@item lastAccessTime -Answer the last access time of the file identified by the receiver - - -@meindex lastChangeTime -@item lastChangeTime -Answer the last change time of the file identified by the receiver -(the `last change time' has to do with permissions, ownership and the -like). On some operating systems, this could actually be the -file creation time. - - -@meindex lastModifyTime -@item lastModifyTime -Answer the last modify time of the file identified by the receiver -(the `last modify time' has to do with the actual file contents). - - -@meindex name -@item name -Answer the receiver's file name. - - -@meindex name:@- -@item name:@- aName -Set the receiver's file name to aName. - - -@meindex parent -@item parent -Answer the archive of which the receiver is a member. - - -@meindex realFileName -@item realFileName -Answer `nil'. - -@meindex refresh -@item refresh -Refresh the statistics for the receiver - - -@meindex size -@item size -Answer the size of the file identified by the receiver - - -@end table - - - -@node VFS.ArchiveMemberHandler-directory operations -@subsection VFS.ArchiveMemberHandler:@- directory operations - -@table @b -@meindex at:@- -@item at:@- aName -Answer a VFSHandler for a file named `aName' residing in the directory -represented by the receiver. - - -@meindex createDir:@- -@item createDir:@- dirName -Create a subdirectory of the receiver, naming it dirName. - - -@meindex do:@- -@item do:@- aBlock -Evaluate aBlock once for each file in the directory represented by the -receiver, passing its name. - - -@end table - - - -@node VFS.ArchiveMemberHandler-file operations -@subsection VFS.ArchiveMemberHandler:@- file operations - -@table @b -@meindex open:@-mode:@-ifFail:@- -@item open:@- class mode:@- mode ifFail:@- aBlock -Open the receiver in the given mode (as answered by FileStream's -class constant methods) - - -@meindex remove -@item remove -Remove the file with the given path name - - -@meindex renameTo:@- -@item renameTo:@- newFileName -Rename the file with the given path name oldFileName to newFileName - - -@meindex update:@- -@item update:@- aspect -Private - Update the in-archive version of the file before closing. - - -@end table - - - -@node VFS.ArchiveMemberHandler-initializing -@subsection VFS.ArchiveMemberHandler:@- initializing - -@table @b -@meindex fillFrom:@- -@item fillFrom:@- data -Called back by the receiver's parent when the ArchiveMemberHandler -asks for file information. - - -@meindex parent:@- -@item parent:@- anArchiveFileHandler -Set the archive of which the receiver is a member. - - -@meindex size:@-stCtime:@-stMtime:@-stAtime:@-mode:@- -@item size:@- bytes stCtime:@- ctime stMtime:@- mtime stAtime:@- atime mode:@- modeBits -Set the file information for the receiver. - - -@meindex size:@-stMtime:@-mode:@- -@item size:@- bytes stMtime:@- mtime mode:@- modeBits -Set the file information for the receiver. - - -@end table - - - -@node VFS.ArchiveMemberHandler-testing -@subsection VFS.ArchiveMemberHandler:@- testing - -@table @b -@meindex exists -@item exists -Answer whether a file with the name contained in the receiver does exist. - - -@meindex isAccessible -@item isAccessible -Answer whether a directory with the name contained in the receiver does exist -and is accessible - - -@meindex isDirectory -@item isDirectory -Answer whether a file with the name contained in the receiver does exist -and identifies a directory. - - -@meindex isExecutable -@item isExecutable -Answer whether a file with the name contained in the receiver does exist -and is executable - - -@meindex isReadable -@item isReadable -Answer whether a file with the name contained in the receiver does exist -and is readable - - -@meindex isWriteable -@item isWriteable -Answer whether a file with the name contained in the receiver does exist -and is writeable - - -@meindex mode -@item mode -Answer the octal permissions for the file. - - -@meindex mode:@- -@item mode:@- mode -Set the octal permissions for the file to be `mode'. - - -@end table - -@node VFS.CStatStruct -@section VFS.CStatStruct -@clindex VFS.CStatStruct - -@table @b -@item Defined in namespace Smalltalk.VFS -@itemx Superclass: CStruct -@itemx Category: Streams-Files - -@end table - -@menu -* VFS.CStatStruct class-accessing:: (class) -* VFS.CStatStruct-accessing:: (instance) -* VFS.CStatStruct-debugging:: (instance) -@end menu - - - -@node VFS.CStatStruct class-accessing -@subsection VFS.CStatStruct class:@- accessing - -@table @b -@meindex alignof -@item alignof -Not commented. - -@meindex sizeof -@item sizeof -Not commented. - -@end table - - - -@node VFS.CStatStruct-accessing -@subsection VFS.CStatStruct:@- accessing - -@table @b -@meindex alignof -@item alignof -Not commented. - -@meindex sizeof -@item sizeof -Not commented. - -@meindex stAtime -@item stAtime -Not commented. - -@meindex stCtime -@item stCtime -Not commented. - -@meindex stMode -@item stMode -Not commented. - -@meindex stMtime -@item stMtime -Not commented. - -@meindex stSize -@item stSize -Not commented. - -@end table - - - -@node VFS.CStatStruct-debugging -@subsection VFS.CStatStruct:@- debugging - -@table @b -@meindex inspectSelectorList -@item inspectSelectorList -Not commented. - -@end table - -@node VFS.DecodedFileHandler -@section VFS.DecodedFileHandler -@clindex VFS.DecodedFileHandler - -@table @b -@item Defined in namespace Smalltalk.VFS -@itemx Superclass: VFS.FileHandlerWrapper -@itemx Category: Streams-Files - -@end table - -@menu -* VFS.DecodedFileHandler class-registering:: (class) -* VFS.DecodedFileHandler-files:: (instance) -@end menu - - - -@node VFS.DecodedFileHandler class-registering -@subsection VFS.DecodedFileHandler class:@- registering - -@table @b -@meindex defaultFileTypes -@item defaultFileTypes -Return the default virtual filesystems and the associated -filter commands. - - -@meindex fileSystems -@slindex gz -@slindex ugz -@slindex Z -@slindex uZ -@slindex bz2 -@slindex ubz2 -@slindex tar -@slindex tgz -@slindex nop -@slindex strings -@item fileSystems -Answer the virtual file systems that can be processed by this subclass. -These are @-#gz (gzip a file), @-#ugz (uncompress a gzipped file), -@-#Z (compress a file via Unix compress), @-#uZ (uncompress a compressed -file), @-#bz2 (compress a file via bzip2), @-#ubz2 (uncompress a file via -bzip2), @-#tar (make a tar archive out of a directory), @-#tgz (make a -gzipped tar archive out of a directory), @-#nop (do nothing, used for -testing) and @-#strings (use the `strings' utility to extract printable -strings from a file). - - -@meindex fileTypes -@item fileTypes -Return the valid virtual filesystems and the associated -filter commands. - - -@meindex priority -@item priority -Answer the priority for this class (higher number = higher priority) in -case multiple classes implement the same file system. - - -@end table - - - -@node VFS.DecodedFileHandler-files -@subsection VFS.DecodedFileHandler:@- files - -@table @b -@meindex at:@- -@item at:@- aName -Signal an error, as this can't represent a file container. - - -@meindex open:@-mode:@-ifFail:@- -@item open:@- class mode:@- mode ifFail:@- aBlock -Open the receiver in the given mode (as answered by FileStream's -class constant methods) - - -@meindex parent:@-fsName:@- -@item parent:@- containerFileHandler fsName:@- aString -Private - Initialize a new object storing the contents of the -virtualFileName file into temporaryFileName. - - -@meindex realFileName -@item realFileName -Answer the real file name which holds the file contents, -or nil if it does not apply. - - -@meindex release -@item release -Release the resources used by the receiver that don't survive when -reloading a snapshot. - - -@end table - -@node VFS.FileHandlerWrapper -@section VFS.FileHandlerWrapper -@clindex VFS.FileHandlerWrapper - + +@node VFS.ArchiveFile-still unclassified +@subsection VFS.ArchiveFile:@- still unclassified + @table @b -@item Defined in namespace Smalltalk.VFS -@itemx Superclass: VFS.VFSHandler -@itemx Category: Streams-Files -DecodedFileHandler handles -virtual filesystems that take a file that is on-disk, run a -command on it, and then read from the result. -@end table +@meindex displayOn:@- +@item displayOn:@- aStream +Print a representation of the file identified by the receiver. -@menu -* VFS.FileHandlerWrapper class-instance creation:: (class) -* VFS.FileHandlerWrapper-accessing:: (instance) -* VFS.FileHandlerWrapper-delegation:: (instance) -@end menu + +@end table -@node VFS.FileHandlerWrapper class-instance creation -@subsection VFS.FileHandlerWrapper class:@- instance creation +@node VFS.ArchiveFile-TmpFileArchiveMember protocol +@subsection VFS.ArchiveFile:@- TmpFileArchiveMember protocol @table @b -@meindex vfsFor:@-name:@- -@item vfsFor:@- parent name:@- fsName -Create an instance of this class representing the contents of the given -file, under the virtual filesystem fsName. +@meindex extractMember:@- +@item extractMember:@- anArchiveMember +Extract the contents of anArchiveMember into a file +that resides on disk, and answer the name of the file. -@end table +@meindex extractMember:@-into:@- +@item extractMember:@- anArchiveMember into:@- file +Extract the contents of anArchiveMember into a file +that resides on disk, and answer the name of the file. +@end table -@node VFS.FileHandlerWrapper-accessing -@subsection VFS.FileHandlerWrapper:@- accessing +@node VFS.ArchiveMember +@section VFS.ArchiveMember +@clindex VFS.ArchiveMember @table @b -@meindex name -@item name -Answer the VFS name for my file. +@item Defined in namespace Smalltalk.VFS +@itemx Superclass: FilePath +@itemx Category: Streams-Files +TmpFileArchiveMember is a handler +class for members of archive files that creates temporary files when +extracting files from an archive. +@end table +@menu +* VFS.ArchiveMember-accessing:: (instance) +* VFS.ArchiveMember-basic:: (instance) +* VFS.ArchiveMember-delegation:: (instance) +* VFS.ArchiveMember-directory operations:: (instance) +* VFS.ArchiveMember-file operations:: (instance) +* VFS.ArchiveMember-initializing:: (instance) +* VFS.ArchiveMember-still unclassified:: (instance) +* VFS.ArchiveMember-testing:: (instance) +@end menu -@meindex parent -@item parent -Answer `parent'. -@meindex realFileName -@item realFileName -Answer the container file containing me. +@node VFS.ArchiveMember-accessing +@subsection VFS.ArchiveMember:@- accessing -@end table +@table @b +@meindex archive +@item archive +Answer the archive of which the receiver is a member. +@meindex asString +@slindex name +@item asString +Answer the name of the file identified by the receiver as answered by +File>>@-#name. -@node VFS.FileHandlerWrapper-delegation -@subsection VFS.FileHandlerWrapper:@- delegation -@table @b @meindex creationTime @item creationTime Answer the creation time of the file identified by the receiver. @@ -31935,24 +32859,6 @@ like). -@meindex isExecutable -@item isExecutable -Answer whether a file with the name contained in the receiver does exist -and is executable - - -@meindex isReadable -@item isReadable -Answer whether a file with the name contained in the receiver does exist -and is readable - - -@meindex isWriteable -@item isWriteable -Answer whether a file with the name contained in the receiver does exist -and is writeable - - @meindex lastAccessTime @item lastAccessTime Answer the last access time of the file identified by the receiver @@ -31972,15 +32878,19 @@ (the `last modify time' has to do with the actual file contents). -@meindex open:@-mode:@-ifFail:@- -@item open:@- class mode:@- mode ifFail:@- aBlock -Open the receiver in the given mode (as answered by FileStream's -class constant methods) +@meindex name +@item name +Answer the receiver's file name. -@meindex remove -@item remove -Remove the file with the given path name +@meindex name:@- +@item name:@- aName +Set the receiver's file name to aName. + + +@meindex refresh +@item refresh +Refresh the statistics for the receiver @meindex size @@ -31990,196 +32900,148 @@ @end table -@node VFS.RealFileHandler -@section VFS.RealFileHandler -@clindex VFS.RealFileHandler - -@table @b -@item Defined in namespace Smalltalk.VFS -@itemx Superclass: VFS.VFSHandler -@itemx Category: Streams-Files -RealFileHandler is an handler for -files that are on disk, as well as for virtual files that end -up being on disk when they are opened for the first time. -@end table -@menu -* VFS.RealFileHandler class-C call-outs:: (class) -* VFS.RealFileHandler class-initialization:: (class) -* VFS.RealFileHandler-accessing:: (instance) -* VFS.RealFileHandler-directory operations:: (instance) -* VFS.RealFileHandler-file operations:: (instance) -* VFS.RealFileHandler-testing:: (instance) -@end menu +@node VFS.ArchiveMember-basic +@subsection VFS.ArchiveMember:@- basic +@table @b +@meindex = +@item = aFile +Answer whether the receiver represents the same file as the receiver. -@node VFS.RealFileHandler class-C call-outs -@subsection VFS.RealFileHandler class:@- C call-outs -@table @b -@meindex working -@item working -Answer the working directory. +@meindex hash +@item hash +Answer a hash value for the receiver. @end table -@node VFS.RealFileHandler class-initialization -@subsection VFS.RealFileHandler class:@- initialization +@node VFS.ArchiveMember-delegation +@subsection VFS.ArchiveMember:@- delegation @table @b -@meindex initialize -@item initialize -Initialize the receiver's class variables +@meindex full +@item full +Answer the size of the file identified by the receiver @end table -@node VFS.RealFileHandler-accessing -@subsection VFS.RealFileHandler:@- accessing +@node VFS.ArchiveMember-directory operations +@subsection VFS.ArchiveMember:@- directory operations @table @b -@meindex creationTime -@item creationTime -Answer the creation time of the file identified by the receiver. -On some operating systems, this could actually be the last change time -(the `last change time' has to do with permissions, ownership and the -like). - - -@meindex finalize -@item finalize -Free the statistics for the receiver - - -@meindex isDirectory -@item isDirectory -Answer whether the file is a directory. - - -@meindex isSymbolicLink -@item isSymbolicLink -Answer whether the file is a symbolic link. - - -@meindex lastAccessTime -@item lastAccessTime -Answer the last access time of the file identified by the receiver - - -@meindex lastChangeTime -@item lastChangeTime -Answer the last change time of the file identified by the receiver -(the `last change time' has to do with permissions, ownership and the -like). On some operating systems, this could actually be the -file creation time. +@meindex at:@- +@item at:@- aName +Answer a FilePath for a file named `aName' residing in the directory +represented by the receiver. -@meindex lastModifyTime -@item lastModifyTime -Answer the last modify time of the file identified by the receiver -(the `last modify time' has to do with the actual file contents). +@meindex createDirectory:@- +@item createDirectory:@- dirName +Create a subdirectory of the receiver, naming it dirName. -@meindex mode -@item mode -Answer the octal permissions for the file. +@meindex namesDo:@- +@item namesDo:@- aBlock +Evaluate aBlock once for each file in the directory represented by the +receiver, passing its name. -@meindex mode:@- -@item mode:@- mode -Set the octal permissions for the file to be `mode'. +@end table -@meindex name -@item name -Answer the name of the file identified by the receiver +@node VFS.ArchiveMember-file operations +@subsection VFS.ArchiveMember:@- file operations -@meindex name:@- -@item name:@- aName -Private - Initialize the receiver's instance variables +@table @b +@meindex open:@-mode:@-ifFail:@- +@item open:@- class mode:@- mode ifFail:@- aBlock +Open the receiver in the given mode (as answered by FileStream's +class constant methods) -@meindex realFileName -@item realFileName -Answer the real file name for the file identified by the receiver +@meindex remove +@item remove +Remove the file with the given path name -@meindex refresh -@item refresh -Refresh the statistics for the receiver +@meindex renameTo:@- +@item renameTo:@- newFileName +Rename the file with the given path name oldFileName to newFileName -@meindex size -@item size -Answer the size of the file identified by the receiver +@meindex update:@- +@item update:@- aspect +Private - Update the in-archive version of the file before closing. @end table -@node VFS.RealFileHandler-directory operations -@subsection VFS.RealFileHandler:@- directory operations +@node VFS.ArchiveMember-initializing +@subsection VFS.ArchiveMember:@- initializing @table @b -@meindex createDir:@- -@item createDir:@- dirName -Create a subdirectory of the receiver, naming it dirName. +@meindex archive:@- +@item archive:@- anArchiveFile +Set the archive of which the receiver is a member. -@meindex do:@- -@item do:@- aBlock -Evaluate aBlock once for each file in the directory represented by the -receiver, passing its name. aBlock should not return. +@meindex fillFrom:@- +@item fillFrom:@- data +Called back by the receiver's archive when the ArchiveMember +asks for file information. -@end table +@meindex size:@-stCtime:@-stMtime:@-stAtime:@-mode:@- +@item size:@- bytes stCtime:@- ctime stMtime:@- mtime stAtime:@- atime mode:@- modeBits +Set the file information for the receiver. +@meindex size:@-stMtime:@-mode:@- +@item size:@- bytes stMtime:@- mtime mode:@- modeBits +Set the file information for the receiver. -@node VFS.RealFileHandler-file operations -@subsection VFS.RealFileHandler:@- file operations -@table @b -@meindex lastAccessTime:@-lastModifyTime:@- -@item lastAccessTime:@- accessDateTime lastModifyTime:@- modifyDateTime -Set the receiver's timestamps to be accessDateTime and modifyDateTime. +@end table -@meindex open:@-mode:@-ifFail:@- -@item open:@- class mode:@- mode ifFail:@- aBlock -Open the receiver in the given mode (as answered by FileStream's -class constant methods) +@node VFS.ArchiveMember-still unclassified +@subsection VFS.ArchiveMember:@- still unclassified -@meindex remove -@item remove -Remove the file with the given path name +@table @b +@meindex , +@item , aName +Answer an object of the same kind as the receiver, whose name +is suffixed with aName. -@meindex renameTo:@- -@item renameTo:@- newFileName -Rename the file with the given path name to newFileName +@meindex displayOn:@- +@item displayOn:@- aStream +Print a representation of the file identified by the receiver. -@meindex symlinkFrom:@- -@item symlinkFrom:@- srcName -Create the receiver as a symlink from path destName +@meindex isAbsolute +@item isAbsolute +Answer whether the receiver identifies an absolute path. @end table -@node VFS.RealFileHandler-testing -@subsection VFS.RealFileHandler:@- testing +@node VFS.ArchiveMember-testing +@subsection VFS.ArchiveMember:@- testing @table @b @meindex exists @@ -32187,6 +33049,18 @@ Answer whether a file with the name contained in the receiver does exist. +@meindex isAccessible +@item isAccessible +Answer whether a directory with the name contained in the receiver does exist +and is accessible + + +@meindex isDirectory +@item isDirectory +Answer whether a file with the name contained in the receiver does exist +and identifies a directory. + + @meindex isExecutable @item isExecutable Answer whether a file with the name contained in the receiver does exist @@ -32199,147 +33073,143 @@ and is readable +@meindex isSymbolicLink +@item isSymbolicLink +Answer whether a file with the name contained in the receiver does exist +and identifies a symbolic link. + + @meindex isWriteable @item isWriteable Answer whether a file with the name contained in the receiver does exist and is writeable +@meindex mode +@item mode +Answer the octal permissions for the file. + + +@meindex mode:@- +@item mode:@- mode +Set the octal permissions for the file to be `mode'. + + @end table -@node VFS.TmpFileArchiveMemberHandler -@section VFS.TmpFileArchiveMemberHandler -@clindex VFS.TmpFileArchiveMemberHandler +@node VFS.FileWrapper +@section VFS.FileWrapper +@clindex VFS.FileWrapper @table @b @item Defined in namespace Smalltalk.VFS -@itemx Superclass: VFS.ArchiveMemberHandler +@itemx Superclass: FilePath @itemx Category: Streams-Files - +FileWrapper gives information for +virtual files that refer to a real file on disk. @end table @menu -* VFS.TmpFileArchiveMemberHandler-directory operations:: (instance) -* VFS.TmpFileArchiveMemberHandler-finalization:: (instance) +* VFS.FileWrapper class-initializing:: (class) +* VFS.FileWrapper class-instance creation:: (class) +* VFS.FileWrapper-accessing:: (instance) +* VFS.FileWrapper-basic:: (instance) +* VFS.FileWrapper-delegation:: (instance) +* VFS.FileWrapper-enumerating:: (instance) +* VFS.FileWrapper-file operations:: (instance) +* VFS.FileWrapper-testing:: (instance) @end menu -@node VFS.TmpFileArchiveMemberHandler-directory operations -@subsection VFS.TmpFileArchiveMemberHandler:@- directory operations +@node VFS.FileWrapper class-initializing +@subsection VFS.FileWrapper class:@- initializing @table @b -@meindex open:@-mode:@-ifFail:@- -@item open:@- class mode:@- mode ifFail:@- aBlock -Open the receiver in the given mode (as answered by FileStream's -class constant methods) +@meindex initialize +@item initialize +Register the receiver with ObjectMemory -@meindex realFileName -@item realFileName -Answer the real file name which holds the file contents, -or nil if it does not apply. +@meindex update:@- +@item update:@- aspect +Private - Remove the files before quitting, and register the virtual +filesystems specified by the subclasses upon image load. @end table -@node VFS.TmpFileArchiveMemberHandler-finalization -@subsection VFS.TmpFileArchiveMemberHandler:@- finalization +@node VFS.FileWrapper class-instance creation +@subsection VFS.FileWrapper class:@- instance creation @table @b -@meindex release -@item release -Release the resources used by the receiver that don't survive when -reloading a snapshot. - - -@end table +@meindex on:@- +@item on:@- file +Create an instance of this class representing the contents of the given +file, under the virtual filesystem fsName. -@node VFS.VFSHandler -@section VFS.VFSHandler -@clindex VFS.VFSHandler -@table @b -@item Defined in namespace Smalltalk.VFS -@itemx Superclass: Object -@itemx Category: Streams-Files -VFSHandler is the abstract class for -implementations of File and Directory. These classes only -delegate to the appropriate handler, which is in charge of -actually accessing or ``molding'' the filesystem. @end table -@menu -* VFS.VFSHandler class-initializing:: (class) -* VFS.VFSHandler class-instance creation:: (class) -* VFS.VFSHandler-accessing:: (instance) -* VFS.VFSHandler-directory operations:: (instance) -* VFS.VFSHandler-file operations:: (instance) -* VFS.VFSHandler-releasing:: (instance) -* VFS.VFSHandler-testing:: (instance) -@end menu - -@node VFS.VFSHandler class-initializing -@subsection VFS.VFSHandler class:@- initializing +@node VFS.FileWrapper-accessing +@subsection VFS.FileWrapper:@- accessing @table @b -@meindex fileSystems -@slindex vfsFor:@-name:@-subPath:@- -@item fileSystems -Answer the virtual file systems that can be processed by this subclass. -The default is to answer an empty array, but subclasses can override -this. If you do so, you should override @-#vfsFor:@-name:@-subPath:@- as well -or you risk infinite loops. +@meindex asString +@item asString +Answer the string representation of the receiver's path. -@meindex initialize -@item initialize -Register the receiver with ObjectMemory +@meindex at:@- +@item at:@- aName +Answer a File or Directory object as appropriate for a file named +'aName' in the directory represented by the receiver. -@meindex priority -@item priority -Answer the priority for this class (higher number = higher priority) in -case multiple classes implement the same file system. The default is 0. +@meindex lastAccessTime:@-lastModifyTime:@- +@item lastAccessTime:@- accessDateTime lastModifyTime:@- modifyDateTime +Update the timestamps of the file corresponding to the receiver, to be +accessDateTime and modifyDateTime. -@meindex register:@-forClass:@- -@slindex fileSystems -@item register:@- fileSystem forClass:@- vfsHandlerClass -Register the given file system to be handled by an instance of -vfsHandlerClass. This is automatically called if the class overrides -@-#fileSystems. +@meindex name +@item name +Answer the full path to the receiver. -@meindex update:@- -@item update:@- aspect -Private - Remove the files before quitting, and register the virtual -filesystems specified by the subclasses upon image load. +@meindex pathTo:@- +@item pathTo:@- destName +Compute the relative path from the receiver to destName. @end table -@node VFS.VFSHandler class-instance creation -@subsection VFS.VFSHandler class:@- instance creation +@node VFS.FileWrapper-basic +@subsection VFS.FileWrapper:@- basic @table @b -@meindex for:@- -@item for:@- fileName -Answer the (real or virtual) file handler for the file named fileName +@meindex = +@item = aFile +Answer whether the receiver represents the same file as the receiver. + + +@meindex hash +@item hash +Answer a hash value for the receiver. @end table -@node VFS.VFSHandler-accessing -@subsection VFS.VFSHandler:@- accessing +@node VFS.FileWrapper-delegation +@subsection VFS.FileWrapper:@- delegation @table @b @meindex creationTime @@ -32350,11 +33220,27 @@ like). -@meindex fullName -@slindex name -@item fullName -Answer the name of the file identified by the receiver as answered by -File>>@-#name. +@meindex full +@item full +Answer the size of the file identified by the receiver + + +@meindex isExecutable +@item isExecutable +Answer whether a file with the name contained in the receiver does exist +and is executable + + +@meindex isReadable +@item isReadable +Answer whether a file with the name contained in the receiver does exist +and is readable + + +@meindex isWriteable +@item isWriteable +Answer whether a file with the name contained in the receiver does exist +and is writeable @meindex lastAccessTime @@ -32376,20 +33262,25 @@ (the `last modify time' has to do with the actual file contents). -@meindex name -@item name -Answer the name of the file identified by the receiver +@meindex mode +@item mode +Answer the permission bits for the file identified by the receiver -@meindex realFileName -@item realFileName -Answer the real file name which holds the file contents, -or nil if it does not apply. +@meindex mode:@- +@item mode:@- anInteger +Answer the permission bits for the file identified by the receiver -@meindex refresh -@item refresh -Refresh the statistics for the receiver +@meindex open:@-mode:@-ifFail:@- +@item open:@- class mode:@- mode ifFail:@- aBlock +Open the receiver in the given mode (as answered by FileStream's +class constant methods) + + +@meindex remove +@item remove +Remove the file with the given path name @meindex size @@ -32401,135 +33292,251 @@ -@node VFS.VFSHandler-directory operations -@subsection VFS.VFSHandler:@- directory operations +@node VFS.FileWrapper-enumerating +@subsection VFS.FileWrapper:@- enumerating @table @b -@meindex at:@- -@item at:@- aName -Answer a VFSHandler for a file named `aName' residing in the directory -represented by the receiver. +@meindex namesDo:@- +@item namesDo:@- aBlock +Evaluate aBlock once for each file in the directory represented by the +receiver, passing its name. -@meindex createDir:@- -@item createDir:@- dirName -Create a subdirectory of the receiver, naming it dirName. +@end table -@meindex do:@- -@item do:@- aBlock -Evaluate aBlock once for each file in the directory represented by the -receiver, passing its name. aBlock should not return. + +@node VFS.FileWrapper-file operations +@subsection VFS.FileWrapper:@- file operations + +@table @b +@meindex pathFrom:@- +@item pathFrom:@- dirName +Compute the relative path from the directory dirName to the receiver + + +@meindex renameTo:@- +@item renameTo:@- newName +Rename the file identified by the receiver to newName + + +@meindex symlinkAs:@- +@item symlinkAs:@- destName +Create destName as a symbolic link of the receiver. The appropriate +relative path is computed automatically. + + +@meindex symlinkFrom:@- +@item symlinkFrom:@- srcName +Create the receiver as a symbolic link from srcName (relative to the +path of the receiver). @end table -@node VFS.VFSHandler-file operations -@subsection VFS.VFSHandler:@- file operations +@node VFS.FileWrapper-testing +@subsection VFS.FileWrapper:@- testing @table @b -@meindex lastAccessTime:@-lastModifyTime:@- -@item lastAccessTime:@- accessDateTime lastModifyTime:@- modifyDateTime -Set the receiver's timestamps to be accessDateTime and modifyDateTime. -If your file system does not support distinct access and modification -times, you should discard accessDateTime. +@meindex exists +@item exists +Answer whether a file with the name contained in the receiver +does exist. -@meindex open:@-ifFail:@- -@item open:@- mode ifFail:@- aBlock -Open the receiver in the given mode (as answered by FileStream's -class constant methods) +@meindex isAbsolute +@item isAbsolute +Answer whether the receiver identifies an absolute path. + +@meindex isAccessible +@item isAccessible +Answer whether a directory with the name contained in the receiver does +exist and can be accessed + + +@meindex isDirectory +@item isDirectory +Answer whether a file with the name contained in the receiver +does exist identifies a directory. + + +@meindex isSymbolicLink +@item isSymbolicLink +Answer whether a file with the name contained in the receiver +does exist and identifies a symbolic link. + + +@end table + +@node VFS.StoredZipMember +@section VFS.StoredZipMember +@clindex VFS.StoredZipMember + +@table @b +@item Defined in namespace Smalltalk.VFS +@itemx Superclass: VFS.TmpFileArchiveMember +@itemx Category: Streams-Files +ArchiveMember is the handler +class for stored ZIP archive members, which are optimized. +@end table + +@menu +* VFS.StoredZipMember-accessing:: (instance) +* VFS.StoredZipMember-opening:: (instance) +@end menu + + + +@node VFS.StoredZipMember-accessing +@subsection VFS.StoredZipMember:@- accessing + +@table @b +@meindex offset +@item offset +Answer `offset'. + +@meindex offset:@- +@item offset:@- anInteger +Not commented. + +@end table + + +@node VFS.StoredZipMember-opening +@subsection VFS.StoredZipMember:@- opening + +@table @b @meindex open:@-mode:@-ifFail:@- @item open:@- class mode:@- mode ifFail:@- aBlock -Open the receiver in the given mode (as answered by FileStream's -class constant methods) +Not commented. + +@end table +@node VFS.TmpFileArchiveMember +@section VFS.TmpFileArchiveMember +@clindex VFS.TmpFileArchiveMember -@meindex openDescriptor:@-ifFail:@- -@item openDescriptor:@- mode ifFail:@- aBlock +@table @b +@item Defined in namespace Smalltalk.VFS +@itemx Superclass: VFS.ArchiveMember +@itemx Category: Streams-Files + +@end table + +@menu +* VFS.TmpFileArchiveMember-directory operations:: (instance) +* VFS.TmpFileArchiveMember-finalization:: (instance) +* VFS.TmpFileArchiveMember-still unclassified:: (instance) +@end menu + + + +@node VFS.TmpFileArchiveMember-directory operations +@subsection VFS.TmpFileArchiveMember:@- directory operations + +@table @b +@meindex file +@item file +Answer the real file name which holds the file contents, +or nil if it does not apply. + + +@meindex open:@-mode:@-ifFail:@- +@item open:@- class mode:@- mode ifFail:@- aBlock Open the receiver in the given mode (as answered by FileStream's class constant methods) -@meindex remove -@item remove -Remove the file with the given path name +@end table -@meindex renameTo:@- -@item renameTo:@- newFileName -Rename the file with the given path name oldFileName to newFileName +@node VFS.TmpFileArchiveMember-finalization +@subsection VFS.TmpFileArchiveMember:@- finalization -@meindex symlinkFrom:@- -@item symlinkFrom:@- srcName -Create the receiver as a symlink from the relative path srcName +@table @b +@meindex release +@item release +Release the resources used by the receiver that don't survive when +reloading a snapshot. @end table -@node VFS.VFSHandler-releasing -@subsection VFS.VFSHandler:@- releasing +@node VFS.TmpFileArchiveMember-still unclassified +@subsection VFS.TmpFileArchiveMember:@- still unclassified @table @b -@meindex finalize -@item finalize -Upon finalization, we remove the file that was temporarily holding the file -contents +@meindex extracted +@item extracted +Answer whether the file has already been extracted to disk. @end table +@node VFS.ZipFile +@section VFS.ZipFile +@clindex VFS.ZipFile +@table @b +@item Defined in namespace Smalltalk.VFS +@itemx Superclass: VFS.ArchiveFile +@itemx Category: Streams-Files +ZipFile transparently extracts +files from a ZIP archive. +@end table -@node VFS.VFSHandler-testing -@subsection VFS.VFSHandler:@- testing +@menu +* VFS.ZipFile-members:: (instance) +@end menu -@table @b -@meindex exists -@item exists -Answer whether a file with the name contained in the receiver does exist. -@meindex isAccessible -@item isAccessible -Answer whether a directory with the name contained in the receiver does -exist and can be accessed +@node VFS.ZipFile-members +@subsection VFS.ZipFile:@- members +@table @b +@meindex centralDirectoryRangeIn:@- +@item centralDirectoryRangeIn:@- f +Not commented. -@meindex isDirectory -@item isDirectory -Answer whether a file with the name contained in the receiver does exist -and identifies a directory. +@meindex createDirectory:@- +@item createDirectory:@- dirName +Create a subdirectory of the receiver, naming it dirName. -@meindex isExecutable -@item isExecutable -Answer whether a file with the name contained in the receiver does exist -and is executable +@meindex extractMember:@-into:@- +@item extractMember:@- anArchiveMember into:@- temp +Extract the contents of anArchiveMember into a file +that resides on disk, and answer the name of the file. -@meindex isReadable -@item isReadable -Answer whether a file with the name contained in the receiver does exist -and is readable +@meindex fileData +@item fileData +Extract the directory listing from the archive -@meindex isSymbolicLink -@item isSymbolicLink -Answer whether the file is a symbolic link. +@meindex member:@-mode:@- +@item member:@- anArchiveMember mode:@- bits +Set the permission bits for the file in anArchiveMember. -@meindex isWriteable -@item isWriteable -Answer whether a file with the name contained in the receiver does exist -and is writeable +@meindex removeMember:@- +@item removeMember:@- anArchiveMember +Remove the member represented by anArchiveMember. + + +@meindex updateMember:@- +@item updateMember:@- anArchiveMember +Update the member represented by anArchiveMember by +copying the file into which it was extracted back to the +archive. @end table diff -rNu smalltalk-3.0.3/doc/gst-base.info smalltalk-3.0.4/doc/gst-base.info --- smalltalk-3.0.3/doc/gst-base.info 2008-05-14 12:35:05.000000000 +0200 +++ smalltalk-3.0.4/doc/gst-base.info 2008-08-09 15:31:03.000000000 +0200 @@ -16,1129 +16,1177 @@  Indirect: gst-base.info-1: 691 -gst-base.info-2: 300026 -gst-base.info-3: 599722 -gst-base.info-4: 779467 -gst-base.info-5: 1233018 +gst-base.info-2: 299711 +gst-base.info-3: 599467 +gst-base.info-4: 803435 +gst-base.info-5: 1267830  Tag Table: (Indirect) Node: Top691 Node: Base classes1627 -Node: AbstractNamespace11665 -Node: AbstractNamespace class-instance creation12420 -Node: AbstractNamespace-accessing12859 -Node: AbstractNamespace-basic & copying14097 -Node: AbstractNamespace-copying14651 -Node: AbstractNamespace-namespace hierarchy15107 -Node: AbstractNamespace-overrides for superspaces17904 -Node: AbstractNamespace-printing19634 -Node: AbstractNamespace-testing20219 -Node: AlternativeObjectProxy20470 -Node: AlternativeObjectProxy class-instance creation21212 -Node: AlternativeObjectProxy-accessing22157 -Node: ArithmeticError22721 -Node: ArithmeticError-description23180 -Node: Array23398 -Node: Array class-instance creation24080 -Node: Array-mutating objects24402 -Node: Array-printing24752 -Node: Array-testing25246 -Node: ArrayedCollection25399 -Node: ArrayedCollection class-instance creation26284 -Node: ArrayedCollection-basic27981 -Node: ArrayedCollection-built ins29119 -Node: ArrayedCollection-copying Collections29395 -Node: ArrayedCollection-enumerating the elements of a collection31160 -Node: ArrayedCollection-enumeration32323 -Node: ArrayedCollection-storing32864 -Node: ArrayedCollection-streams33166 -Node: Association33414 -Node: Association class-basic34099 -Node: Association-accessing34350 -Node: Association-finalization34970 -Node: Association-printing35203 -Node: Association-storing35463 -Node: Association-testing35729 -Node: Autoload36227 -Node: Autoload class-instance creation36895 -Node: Autoload-accessing37411 -Node: Bag37751 -Node: Bag class-basic38459 -Node: Bag-adding38728 -Node: Bag-enumerating the elements of a collection39221 -Node: Bag-extracting items39591 -Node: Bag-printing39883 -Node: Bag-removing40100 -Node: Bag-storing40422 -Node: Bag-testing collections40652 -Node: Behavior41150 -Node: Behavior-accessing class hierarchy42876 -Node: Behavior-accessing instances and variables43615 -Node: Behavior-accessing the methodDictionary44914 -Node: Behavior-built ins46327 -Node: Behavior-builtin48036 -Node: Behavior-compilation (alternative)48806 -Node: Behavior-compiling methods49637 -Node: Behavior-creating a class hierarchy50110 -Node: Behavior-enumerating50559 -Node: Behavior-evaluating51625 -Node: Behavior-instance creation52924 -Node: Behavior-instance variables53718 -Node: Behavior-method dictionary54283 -Node: Behavior-parsing class declarations57858 -Node: Behavior-pluggable behavior (not yet implemented)58536 -Node: Behavior-printing hierarchy59683 -Node: Behavior-still unclassified60278 -Node: Behavior-support for lightweight classes60872 -Node: Behavior-testing functionality62062 -Node: Behavior-testing the class hierarchy62345 -Node: Behavior-testing the form of the instances63415 -Node: Behavior-testing the method dictionary64352 -Node: BindingDictionary65753 -Node: BindingDictionary-accessing66610 -Node: BindingDictionary-copying68506 -Node: BindingDictionary-forward declarations69181 -Node: BindingDictionary-printing69619 -Node: BindingDictionary-testing70027 -Node: BlockClosure70256 -Node: BlockClosure class-instance creation71489 -Node: BlockClosure class-testing72371 -Node: BlockClosure-accessing72679 -Node: BlockClosure-built ins74281 -Node: BlockClosure-control structures74931 -Node: BlockClosure-exception handling75612 -Node: BlockClosure-multiple process77628 -Node: BlockClosure-overriding79085 -Node: BlockClosure-testing79362 -Node: BlockClosure-unwind protection79636 -Node: BlockContext81121 -Node: BlockContext-accessing81950 -Node: BlockContext-debugging83477 -Node: BlockContext-printing83896 -Node: Boolean84135 -Node: Boolean class-testing84896 -Node: Boolean-basic85213 -Node: Boolean-C hacks86509 -Node: Boolean-overriding86771 -Node: Boolean-storing87014 -Node: ByteArray87430 -Node: ByteArray class-instance creation88062 -Node: ByteArray-built ins88398 -Node: ByteArray-converting89737 -Node: ByteArray-more advanced accessing90196 -Node: ByteArray-storing97116 -Node: ByteStream97540 -Node: ByteStream-basic97929 -Node: CAggregate99718 -Node: CAggregate class-accessing100023 -Node: CAggregate-accessing100313 -Node: CallinProcess100551 -Node: CArray101079 -Node: CArray-accessing101332 -Node: CArrayCType101539 -Node: CArrayCType class-instance creation101886 -Node: CArrayCType-accessing102581 -Node: CArrayCType-storing102987 -Node: CBoolean103182 -Node: CBoolean-accessing103489 -Node: CByte103820 -Node: CByte class-conversion104133 -Node: CByte-accessing104426 -Node: CChar104838 -Node: CChar class-accessing105142 -Node: CChar-accessing105509 -Node: CChar-conversion105854 -Node: CCompound106255 -Node: CCompound class-instance creation106607 -Node: CCompound class-subclass creation106937 -Node: CCompound-instance creation108564 -Node: CDouble108917 -Node: CDouble class-accessing109199 -Node: CDouble-accessing109576 -Node: CFloat109906 -Node: CFloat class-accessing110194 -Node: CFloat-accessing110566 -Node: CFunctionDescriptor110891 -Node: CFunctionDescriptor class-instance creation111676 -Node: CFunctionDescriptor class-testing112038 -Node: CFunctionDescriptor-accessing112549 -Node: CFunctionDescriptor-calling113181 -Node: CFunctionDescriptor-printing115079 -Node: Character115352 -Node: Character class-built ins116655 -Node: Character class-constants117309 -Node: Character class-initializing lookup tables118117 -Node: Character class-instance creation118767 -Node: Character class-testing119139 -Node: Character-built ins119429 -Node: Character-coercion methods120218 -Node: Character-comparing120922 -Node: Character-converting121569 -Node: Character-printing121958 -Node: Character-storing122446 -Node: Character-testing122790 -Node: Character-testing functionality123678 -Node: CharacterArray123926 -Node: CharacterArray class-basic124663 -Node: CharacterArray class-multibyte encodings125150 -Node: CharacterArray-built ins125533 -Node: CharacterArray-comparing125982 -Node: CharacterArray-converting128401 -Node: CharacterArray-multibyte encodings129943 -Node: CharacterArray-string processing130518 -Node: CharacterArray-testing functionality133659 -Node: CInt133919 -Node: CInt class-accessing134190 -Node: CInt-accessing134532 -Node: Class134867 -Node: Class class-initialize135820 -Node: Class-accessing instances and variables136067 -Node: Class-filing138021 -Node: Class-instance creation138453 -Node: Class-instance creation - alternative141414 -Node: Class-pragmas143592 -Node: Class-printing144106 -Node: Class-saving and loading144503 -Node: Class-security145885 -Node: Class-testing146185 -Node: Class-testing functionality146430 -Node: ClassDescription146663 -Node: ClassDescription-compiling147447 -Node: ClassDescription-conversion148289 -Node: ClassDescription-copying148756 -Node: ClassDescription-filing149967 -Node: ClassDescription-organization of messages and classes150764 -Node: ClassDescription-parsing class declarations152193 -Node: ClassDescription-printing152702 -Node: ClassDescription-still unclassified153499 -Node: CLong154052 -Node: CLong class-accessing154336 -Node: CLong-accessing154703 -Node: CLongDouble155023 -Node: CLongDouble class-accessing155322 -Node: CLongDouble-accessing155719 -Node: CObject156069 -Node: CObject class-conversion156974 -Node: CObject class-instance creation157238 -Node: CObject class-subclassing157858 -Node: CObject-accessing158128 -Node: CObject-C data access158571 -Node: CObject-conversion159189 -Node: CObject-finalization159852 -Node: CObject-pointer-like behavior160330 -Node: Collection162604 -Node: Collection class-instance creation163591 -Node: Collection class-multibyte encodings165039 -Node: Collection-adding165379 -Node: Collection-converting165742 -Node: Collection-copying Collections167013 -Node: Collection-enumeration167565 -Node: Collection-finalization171208 -Node: Collection-printing171527 -Node: Collection-removing171884 -Node: Collection-storing172838 -Node: Collection-testing collections173111 -Node: CompiledBlock173875 -Node: CompiledBlock class-instance creation174383 -Node: CompiledBlock-accessing175152 -Node: CompiledBlock-basic176225 -Node: CompiledBlock-printing176948 -Node: CompiledBlock-saving and loading177229 -Node: CompiledCode177664 -Node: CompiledCode class-cache flushing178527 -Node: CompiledCode class-instance creation178897 -Node: CompiledCode class-tables179496 -Node: CompiledCode-accessing180731 -Node: CompiledCode-basic182251 -Node: CompiledCode-copying183016 -Node: CompiledCode-debugging183255 -Node: CompiledCode-decoding bytecodes183528 -Node: CompiledCode-literals - iteration183953 -Node: CompiledCode-security184515 -Node: CompiledCode-testing accesses184847 -Node: CompiledCode-translation186014 -Node: CompiledMethod186288 -Node: CompiledMethod class-instance creation187285 -Node: CompiledMethod class-lean images188161 -Node: CompiledMethod-accessing188496 -Node: CompiledMethod-attributes190198 -Node: CompiledMethod-basic191154 -Node: CompiledMethod-c call-outs191471 -Node: CompiledMethod-compiling192021 -Node: CompiledMethod-invoking192871 -Node: CompiledMethod-printing193918 -Node: CompiledMethod-saving and loading194276 -Node: CompiledMethod-source code194746 -Node: CompiledMethod-testing195452 -Node: ContextPart196045 -Node: ContextPart class-built ins196913 -Node: ContextPart class-exception handling197228 -Node: ContextPart-accessing198224 -Node: ContextPart-built ins201567 -Node: ContextPart-copying202267 -Node: ContextPart-debugging202627 -Node: ContextPart-enumerating203485 -Node: ContextPart-exception handling204103 -Node: ContextPart-printing204379 -Node: ContextPart-security checks204792 -Node: Continuation205360 -Node: Continuation class-instance creation206030 -Node: Continuation-invocation206704 -Node: CPtr208071 -Node: CPtr-accessing208313 -Node: CPtrCType208862 -Node: CPtrCType class-instance creation209190 -Node: CPtrCType-accessing209561 -Node: CPtrCType-storing210062 -Node: CScalar210247 -Node: CScalar class-instance creation210543 -Node: CScalar-accessing211015 -Node: CScalarCType211544 -Node: CScalarCType-accessing211842 -Node: CScalarCType-storing212184 -Node: CShort212420 -Node: CShort class-accessing212704 -Node: CShort-accessing213076 -Node: CSmalltalk213401 -Node: CSmalltalk class-accessing213696 -Node: CSmalltalk-accessing214088 -Node: CString214433 -Node: CString class-accessing215481 -Node: CString class-instance creation215775 -Node: CString-accessing216279 -Node: CStringCType216808 -Node: CStringCType-accessing217077 -Node: CStruct217292 -Node: CStruct class-subclass creation217552 -Node: CType217793 -Node: CType class-C instance creation218957 -Node: CType class-initialization219651 -Node: CType-accessing219908 -Node: CType-C instance creation220760 -Node: CType-storing221285 -Node: CUChar221496 -Node: CUChar class-getting info221771 -Node: CUChar-accessing222152 -Node: CUInt222480 -Node: CUInt class-accessing222749 -Node: CUInt-accessing223116 -Node: CULong223436 -Node: CULong class-accessing223709 -Node: CULong-accessing224081 -Node: CUnion224406 -Node: CUnion class-subclass creation224658 -Node: CUShort224895 -Node: CUShort class-accessing225172 -Node: CUShort-accessing225549 -Node: Date225879 -Node: Date class-basic227351 -Node: Date class-instance creation (ANSI)228479 -Node: Date class-instance creation (Blue Book)228969 -Node: Date-basic230289 -Node: Date-compatibility (non-ANSI)230833 -Node: Date-date computations231246 -Node: Date-printing232957 -Node: Date-storing233185 -Node: Date-testing233408 -Node: DateTime233727 -Node: DateTime class-information234389 -Node: DateTime class-instance creation234680 -Node: DateTime class-instance creation (non-ANSI)235981 -Node: DateTime-basic236722 -Node: DateTime-computations237069 -Node: DateTime-printing237761 -Node: DateTime-splitting in dates & times238027 -Node: DateTime-storing238626 -Node: DateTime-testing238891 -Node: DateTime-time zones239266 -Node: DeferredVariableBinding240396 -Node: DeferredVariableBinding class-basic240997 -Node: DeferredVariableBinding-basic241636 -Node: DeferredVariableBinding-storing242124 -Node: Delay242505 -Node: Delay class-instance creation243319 -Node: Delay class-timer process243796 -Node: Delay-accessing244620 -Node: Delay-comparing244907 -Node: Delay-delaying245188 -Node: Delay-initialization245504 -Node: Delay-instance creation245777 -Node: DelayedAdaptor246054 -Node: DelayedAdaptor-accessing246590 -Node: Dictionary246969 -Node: Dictionary class-instance creation248177 -Node: Dictionary-accessing248621 -Node: Dictionary-awful ST-80 compatibility hacks250599 -Node: Dictionary-dictionary enumerating251062 -Node: Dictionary-dictionary removing252150 -Node: Dictionary-dictionary testing253019 -Node: Dictionary-polymorphism hacks253693 -Node: Dictionary-printing253978 -Node: Dictionary-rehashing254342 -Node: Dictionary-storing254559 -Node: Dictionary-testing254821 -Node: DirectedMessage255097 -Node: DirectedMessage class-creating instances255673 -Node: DirectedMessage-accessing256399 -Node: DirectedMessage-basic256707 -Node: DirectedMessage-multiple process257131 -Node: DirectedMessage-saving and loading257729 -Node: Directory258167 -Node: Directory class-file name management258907 -Node: Directory class-file operations259446 -Node: Directory class-reading system defaults260131 -Node: Directory-accessing261346 -Node: Directory-enumerating262447 -Node: DLD263422 -Node: DLD class-C call-outs264102 -Node: DLD class-dynamic linking264354 -Node: DumperProxy265700 -Node: DumperProxy class-accessing266236 -Node: DumperProxy class-instance creation266701 -Node: DumperProxy-saving and restoring267206 -Node: Duration267621 -Node: Duration class-instance creation268032 -Node: Duration class-instance creation (non ANSI)268532 -Node: Duration-arithmetics269011 -Node: Error270199 -Node: Error-exception description270524 -Node: Exception270865 -Node: Exception class-comparison272003 -Node: Exception class-creating ExceptionCollections272467 -Node: Exception class-initialization272891 -Node: Exception class-instance creation273273 -Node: Exception class-interoperability with TrappableEvents273857 -Node: Exception-comparison274331 -Node: Exception-exception description274779 -Node: Exception-exception signaling275222 -Node: ExceptionSet275615 -Node: ExceptionSet class-instance creation276197 -Node: ExceptionSet-enumerating276462 -Node: False277026 -Node: False-basic277425 -Node: False-C hacks278419 -Node: False-printing278599 -Node: File278800 -Node: File class-C functions279663 -Node: File class-file name management279944 -Node: File class-file operations281483 -Node: File class-instance creation282414 -Node: File class-reading system defaults282916 -Node: File class-testing283270 -Node: File-accessing283922 -Node: File-file name management285648 -Node: File-file operations286502 -Node: File-printing288332 -Node: File-testing288636 -Node: FileDescriptor289696 -Node: FileDescriptor class-initialization290910 -Node: FileDescriptor class-instance creation291248 -Node: FileDescriptor class-still unclassified296344 -Node: FileDescriptor-accessing297414 -Node: FileDescriptor-basic298575 -Node: FileDescriptor-built ins300026 -Node: FileDescriptor-class type methods301542 -Node: FileDescriptor-initialize-release301972 -Node: FileDescriptor-low-level access302564 -Node: FileDescriptor-overriding inherited methods303792 -Node: FileDescriptor-printing304638 -Node: FileDescriptor-testing304938 -Node: FileSegment305162 -Node: FileSegment class-basic305781 -Node: FileSegment class-installing306138 -Node: FileSegment-basic306524 -Node: FileSegment-equality307523 -Node: FileStream307806 -Node: FileStream class-file-in308522 -Node: FileStream class-standard streams312059 -Node: FileStream-basic312799 -Node: FileStream-buffering313748 -Node: FileStream-compiling314961 -Node: FileStream-overriding inherited methods315336 -Node: FileStream-testing316117 -Node: Float316339 -Node: Float class-byte-order dependancies317253 -Node: Float class-characterization317533 -Node: Float-arithmetic318555 -Node: Float-basic318965 -Node: Float-built ins319160 -Node: Float-coercing320101 -Node: Float-coercion320605 -Node: Float-comparing320868 -Node: Float-printing321518 -Node: Float-storing321743 -Node: Float-testing322153 -Node: Float-testing functionality322922 -Node: Float-transcendental operations323160 -Node: FloatD323645 -Node: FloatD class-byte-order dependencies324150 -Node: FloatD class-characterization324545 -Node: FloatD class-converting325819 -Node: FloatD-built ins326075 -Node: FloatD-coercing327312 -Node: FloatE327715 -Node: FloatE class-byte-order dependancies328270 -Node: FloatE class-byte-order dependencies328562 -Node: FloatE class-characterization328928 -Node: FloatE class-converting330490 -Node: FloatE-built ins330746 -Node: FloatE-coercing331983 -Node: FloatQ332386 -Node: FloatQ class-byte-order dependancies332932 -Node: FloatQ class-characterization333217 -Node: FloatQ class-converting334779 -Node: FloatQ-built ins335035 -Node: FloatQ-coercing336272 -Node: FloatQ-misc math336700 -Node: Fraction336897 -Node: Fraction class-converting337688 -Node: Fraction class-instance creation337932 -Node: Fraction-accessing338317 -Node: Fraction-arithmetic338607 -Node: Fraction-coercing339331 -Node: Fraction-coercion339969 -Node: Fraction-comparing340250 -Node: Fraction-converting340752 -Node: Fraction-optimized cases341253 -Node: Fraction-printing341687 -Node: Fraction-testing342019 -Node: Generator342226 -Node: Generator class-instance creation344532 -Node: Generator-stream protocol345279 -Node: Getopt346342 -Node: Getopt class-instance creation346708 -Node: Halt349347 -Node: Halt-description349641 -Node: HashedCollection349892 -Node: HashedCollection class-instance creation350753 -Node: HashedCollection-accessing351225 -Node: HashedCollection-builtins351805 -Node: HashedCollection-copying352582 -Node: HashedCollection-enumerating the elements of a collection353060 -Node: HashedCollection-rehashing353436 -Node: HashedCollection-removing353722 -Node: HashedCollection-saving and loading354131 -Node: HashedCollection-storing354645 -Node: HashedCollection-testing collections354972 -Node: HomedAssociation355919 -Node: HomedAssociation class-basic356489 -Node: HomedAssociation-accessing356791 -Node: HomedAssociation-finalization357157 -Node: HomedAssociation-storing357777 -Node: IdentityDictionary358046 -Node: IdentitySet358439 -Node: IdentitySet-testing358838 -Node: Integer359099 -Node: Integer class-converting359928 -Node: Integer-accessing360289 -Node: Integer-basic360528 -Node: Integer-bit operators360738 -Node: Integer-converting362106 -Node: Integer-extension362832 -Node: Integer-iterators363145 -Node: Integer-math methods363511 -Node: Integer-printing364412 -Node: Integer-storing365658 -Node: Integer-testing functionality365985 -Node: Interval366259 -Node: Interval class-instance creation366855 -Node: Interval-basic367457 -Node: Interval-printing368143 -Node: Interval-storing368476 -Node: Interval-testing368723 -Node: LargeArray368994 -Node: LargeArray-overridden369397 -Node: LargeArrayedCollection369589 -Node: LargeArrayedCollection class-instance creation370129 -Node: LargeArrayedCollection-accessing370488 -Node: LargeArrayedCollection-basic370992 -Node: LargeByteArray371393 -Node: LargeByteArray-overridden371821 -Node: LargeInteger372262 -Node: LargeInteger-accessing373097 -Node: LargeInteger-arithmetic373336 -Node: LargeInteger-bit operations374463 -Node: LargeInteger-built-ins375138 -Node: LargeInteger-coercion376217 -Node: LargeInteger-disabled376763 -Node: LargeInteger-primitive operations377138 -Node: LargeInteger-testing377618 -Node: LargeNegativeInteger378262 -Node: LargeNegativeInteger-converting378964 -Node: LargeNegativeInteger-numeric testing379352 -Node: LargeNegativeInteger-reverting to LargePositiveInteger379887 -Node: LargePositiveInteger380459 -Node: LargePositiveInteger-arithmetic381336 -Node: LargePositiveInteger-converting381812 -Node: LargePositiveInteger-helper byte-level methods382366 -Node: LargePositiveInteger-numeric testing384103 -Node: LargePositiveInteger-primitive operations384639 -Node: LargeWordArray385333 -Node: LargeWordArray-overridden385763 -Node: LargeZeroInteger386062 -Node: LargeZeroInteger-accessing386890 -Node: LargeZeroInteger-arithmetic387155 -Node: LargeZeroInteger-numeric testing388085 -Node: LargeZeroInteger-printing388422 -Node: Link388720 -Node: Link class-instance creation389265 -Node: Link-basic389497 -Node: Link-iteration389750 -Node: LinkedList390211 -Node: LinkedList-accessing390819 -Node: LinkedList-adding391135 -Node: LinkedList-enumerating391868 -Node: LinkedList-testing392348 -Node: LookupKey392704 -Node: LookupKey class-basic393258 -Node: LookupKey-accessing393500 -Node: LookupKey-printing393765 -Node: LookupKey-storing394012 -Node: LookupKey-testing394268 -Node: LookupTable394702 -Node: LookupTable class-instance creation395577 -Node: LookupTable-accessing395839 -Node: LookupTable-enumerating396648 -Node: LookupTable-hashing397173 -Node: LookupTable-rehashing397414 -Node: LookupTable-removing397639 -Node: LookupTable-storing398141 -Node: Magnitude398380 -Node: Magnitude-basic398836 -Node: Magnitude-misc methods399368 -Node: MappedCollection399784 -Node: MappedCollection class-instance creation401159 -Node: MappedCollection-basic401612 -Node: Memory403367 -Node: Memory class-accessing403927 -Node: Message408059 -Node: Message class-creating instances408735 -Node: Message-accessing409128 -Node: Message-basic409570 -Node: Message-printing409869 -Node: MessageNotUnderstood410201 -Node: MessageNotUnderstood-accessing410695 -Node: MessageNotUnderstood-description411034 -Node: Metaclass411315 -Node: Metaclass class-instance creation412314 -Node: Metaclass-accessing412599 -Node: Metaclass-basic413045 -Node: Metaclass-delegation414389 -Node: Metaclass-filing415918 -Node: Metaclass-printing416209 -Node: Metaclass-testing functionality416764 -Node: MethodContext417025 -Node: MethodContext-accessing417567 -Node: MethodContext-debugging418877 -Node: MethodContext-printing419659 -Node: MethodDictionary419905 -Node: MethodDictionary-adding420436 -Node: MethodDictionary-rehashing420685 -Node: MethodDictionary-removing420939 -Node: MethodInfo421351 -Node: MethodInfo-accessing421837 -Node: MethodInfo-equality422782 -Node: Namespace423075 -Node: Namespace class-accessing423683 -Node: Namespace class-disabling instance creation424086 -Node: Namespace class-initialization424482 -Node: Namespace-accessing424919 -Node: Namespace-namespace hierarchy425208 -Node: Namespace-overrides for superspaces425706 -Node: Namespace-printing427503 -Node: NetClients.URIResolver428007 -Node: NetClients.URIResolver class-api428462 -Node: NetClients.URIResolver class-instance creation429612 -Node: NetClients.URL429989 -Node: NetClients.URL class-encoding URLs430710 -Node: NetClients.URL class-instance creation431215 -Node: NetClients.URL-accessing432040 -Node: NetClients.URL-comparing434765 -Node: NetClients.URL-copying435291 -Node: NetClients.URL-initialize-release435828 -Node: NetClients.URL-printing436127 -Node: NetClients.URL-testing436421 -Node: NetClients.URL-utilities437197 -Node: Notification437507 -Node: Notification-exception description437960 -Node: NullProxy438422 -Node: NullProxy class-instance creation439034 -Node: NullProxy-accessing439305 -Node: NullValueHolder439557 -Node: NullValueHolder class-creating instances440146 -Node: NullValueHolder-accessing440493 -Node: Number440841 -Node: Number class-converting441769 -Node: Number class-testing442229 -Node: Number-arithmetic442497 -Node: Number-coercion443829 -Node: Number-comparing444102 -Node: Number-converting444653 -Node: Number-copying446008 -Node: Number-error raising446323 -Node: Number-misc math446694 -Node: Number-point creation448859 -Node: Number-retrying449156 -Node: Number-shortcuts and iterators450961 -Node: Number-testing452210 -Node: Number-truncation and round off453646 -Node: Object454461 -Node: Object class-initialization455417 -Node: Object-built ins456016 -Node: Object-change and update464735 -Node: Object-class type methods465942 -Node: Object-conversion466761 -Node: Object-copying467008 -Node: Object-debugging467672 -Node: Object-dependents access468001 -Node: Object-error raising468705 -Node: Object-finalization469392 -Node: Object-printing470385 -Node: Object-relational operators472130 -Node: Object-saving and loading472494 -Node: Object-storing473497 -Node: Object-syntax shortcuts474195 -Node: Object-testing functionality474522 -Node: Object-VM callbacks476090 -Node: ObjectDumper476575 -Node: ObjectDumper class-establishing proxy classes477780 -Node: ObjectDumper class-instance creation478629 -Node: ObjectDumper class-shortcuts479042 -Node: ObjectDumper class-testing479436 -Node: ObjectDumper-accessing479880 -Node: ObjectDumper-loading/dumping objects480388 -Node: ObjectDumper-stream interface480828 -Node: ObjectMemory481210 -Node: ObjectMemory class-accessing482295 -Node: ObjectMemory class-builtins482562 -Node: ObjectMemory class-initialization485909 -Node: ObjectMemory class-saving the image486239 -Node: ObjectMemory-accessing486567 -Node: ObjectMemory-builtins491521 -Node: ObjectMemory-derived information491806 -Node: OrderedCollection492793 -Node: OrderedCollection class-instance creation493515 -Node: OrderedCollection-accessing493873 -Node: OrderedCollection-adding494340 -Node: OrderedCollection-removing496404 -Node: Package497059 -Node: Package class-instance creation497533 -Node: Package-accessing497789 -Node: PackageLoader500849 -Node: PackageLoader class-accessing501413 -Node: PackageLoader class-loading504034 -Node: PackageLoader class-testing504434 -Node: Permission504725 -Node: Permission class-testing505194 -Node: Permission-accessing505944 -Node: Permission-testing506522 -Node: PluggableAdaptor506772 -Node: PluggableAdaptor class-creating instances507409 -Node: PluggableAdaptor-accessing508505 -Node: PluggableProxy508806 -Node: PluggableProxy class-accessing509444 -Node: PluggableProxy-saving and restoring509894 -Node: Point510329 -Node: Point class-instance creation511068 -Node: Point-accessing511381 -Node: Point-arithmetic511815 -Node: Point-comparing512534 -Node: Point-converting513347 -Node: Point-point functions513866 -Node: Point-printing514814 -Node: Point-storing515048 -Node: Point-truncation and round off515296 -Node: PositionableStream515708 -Node: PositionableStream class-instance creation516672 -Node: PositionableStream-accessing-reading517197 -Node: PositionableStream-class type methods518572 -Node: PositionableStream-compiling519107 -Node: PositionableStream-positioning519601 -Node: PositionableStream-testing520832 -Node: PositionableStream-truncating521314 -Node: Process521614 -Node: Process-accessing522194 -Node: Process-basic523319 -Node: Process-builtins525031 -Node: Process-printing526151 -Node: ProcessorScheduler526365 -Node: ProcessorScheduler class-instance creation527044 -Node: ProcessorScheduler-basic527358 -Node: ProcessorScheduler-built ins528832 -Node: ProcessorScheduler-idle tasks529534 -Node: ProcessorScheduler-printing530038 -Node: ProcessorScheduler-priorities530357 -Node: ProcessorScheduler-storing532023 -Node: ProcessorScheduler-timed invocation532364 -Node: Promise532935 -Node: Promise class-creating instances533562 -Node: Promise-accessing533973 -Node: Promise-initializing534428 -Node: Promise-printing534672 -Node: Promise-still unclassified534914 -Node: Random535170 -Node: Random class-instance creation535631 -Node: Random class-shortcuts536013 -Node: Random-basic536403 -Node: Random-testing536833 -Node: ReadStream537159 -Node: ReadStream class-instance creation537566 -Node: ReadWriteStream537986 -Node: ReadWriteStream class-instance creation538484 -Node: ReadWriteStream-positioning539122 -Node: Rectangle539441 -Node: Rectangle class-instance creation540242 -Node: Rectangle-accessing540800 -Node: Rectangle-copying543214 -Node: Rectangle-printing543448 -Node: Rectangle-rectangle functions543790 -Node: Rectangle-testing545693 -Node: Rectangle-transforming546523 -Node: Rectangle-truncation and round off547163 -Node: RecursionLock547468 -Node: RecursionLock class-instance creation547872 -Node: RecursionLock-accessing548122 -Node: RecursionLock-mutual exclusion548735 -Node: RecursionLock-printing549110 -Node: Regex549376 -Node: Regex class-instance creation550391 -Node: Regex-basic550650 -Node: Regex-conversion551072 -Node: Regex-printing551378 -Node: RegexResults552038 -Node: RegexResults-accessing552656 -Node: RegexResults-testing554169 -Node: RootNamespace555201 -Node: RootNamespace class-instance creation555761 -Node: RootNamespace-namespace hierarchy556110 -Node: RootNamespace-overrides for superspaces556557 -Node: RootNamespace-printing557188 -Node: RunArray557712 -Node: RunArray class-instance creation558685 -Node: RunArray-accessing558973 -Node: RunArray-adding559323 -Node: RunArray-basic560413 -Node: RunArray-copying560734 -Node: RunArray-enumerating561106 -Node: RunArray-removing561582 -Node: RunArray-searching562063 -Node: RunArray-testing562493 -Node: ScaledDecimal562752 -Node: ScaledDecimal class-instance creation563530 -Node: ScaledDecimal-arithmetic563945 -Node: ScaledDecimal-coercion564680 -Node: ScaledDecimal-comparing565711 -Node: ScaledDecimal-constants566363 -Node: ScaledDecimal-printing566681 -Node: ScaledDecimal-storing567157 -Node: SecurityPolicy567598 -Node: SecurityPolicy-modifying568186 -Node: SecurityPolicy-querying568538 -Node: Semaphore568797 -Node: Semaphore class-instance creation569473 -Node: Semaphore-accessing569862 -Node: Semaphore-builtins570362 -Node: Semaphore-mutual exclusion571723 -Node: Semaphore-printing572073 -Node: SequenceableCollection572319 -Node: SequenceableCollection class-instance creation573133 -Node: SequenceableCollection-basic573627 -Node: SequenceableCollection-concatenating578275 -Node: SequenceableCollection-copying SequenceableCollections580063 -Node: SequenceableCollection-enumerating582828 -Node: SequenceableCollection-replacing items586390 -Node: SequenceableCollection-sorting587353 -Node: SequenceableCollection-testing587927 -Node: Set588478 -Node: Set-arithmetic588910 -Node: Set-awful ST-80 compatibility hacks589255 -Node: Set-comparing589632 -Node: SharedQueue590043 -Node: SharedQueue class-instance creation590577 -Node: SharedQueue-accessing590962 -Node: Signal591480 -Node: Signal-accessing592148 -Node: Signal-copying593003 -Node: Signal-exception handling593276 -Node: SingletonProxy595907 -Node: SingletonProxy class-accessing596523 -Node: SingletonProxy class-instance creation596904 -Node: SingletonProxy-saving and restoring597361 -Node: SmallInteger597804 -Node: SmallInteger class-getting limits598541 -Node: SmallInteger class-testing599043 -Node: SmallInteger-bit arithmetic599355 -Node: SmallInteger-built ins599722 -Node: SmallInteger-builtins602152 -Node: SmallInteger-coercion602911 -Node: SmallInteger-coercion methods603225 -Node: SmallInteger-testing functionality603597 -Node: SortedCollection603846 -Node: SortedCollection class-hacking604990 -Node: SortedCollection class-instance creation605275 -Node: SortedCollection-basic605804 -Node: SortedCollection-copying606365 -Node: SortedCollection-disabled606688 -Node: SortedCollection-enumerating607558 -Node: SortedCollection-saving and loading607904 -Node: SortedCollection-searching608266 -Node: Stream608869 -Node: Stream-accessing-reading609908 -Node: Stream-accessing-writing611780 -Node: Stream-basic612493 -Node: Stream-built ins612684 -Node: Stream-character writing613614 -Node: Stream-concatenating614485 -Node: Stream-enumerating615158 -Node: Stream-filing out615536 -Node: Stream-filtering615896 -Node: Stream-polymorphism618067 -Node: Stream-positioning618473 -Node: Stream-printing619655 -Node: Stream-storing620410 -Node: Stream-testing620778 -Node: String621292 -Node: String class-instance creation622364 -Node: String class-multibyte encodings622848 -Node: String-accessing623176 -Node: String-basic623573 -Node: String-built ins623978 -Node: String-converting625841 -Node: String-printing626320 -Node: String-regex627168 -Node: String-testing functionality633721 -Node: Symbol633923 -Node: Symbol class-built ins634761 -Node: Symbol class-instance creation634992 -Node: Symbol class-symbol table636147 -Node: Symbol-basic637572 -Node: Symbol-built ins638341 -Node: Symbol-converting638666 -Node: Symbol-misc639022 -Node: Symbol-storing639202 -Node: Symbol-testing640108 -Node: Symbol-testing functionality640392 -Node: SymLink640629 -Node: SymLink class-instance creation641190 -Node: SymLink-accessing641526 -Node: SymLink-iteration641877 -Node: SymLink-printing642108 -Node: SystemDictionary642324 -Node: SystemDictionary class-initialization643281 -Node: SystemDictionary-basic643556 -Node: SystemDictionary-builtins643899 -Node: SystemDictionary-c call-outs645245 -Node: SystemDictionary-command-line645654 -Node: SystemDictionary-miscellaneous648345 -Node: SystemDictionary-printing648811 -Node: SystemDictionary-special accessing649246 -Node: SystemDictionary-testing649859 -Node: SystemExceptions.AlreadyDefined650209 -Node: SystemExceptions.AlreadyDefined-accessing650735 -Node: SystemExceptions.ArgumentOutOfRange651003 -Node: SystemExceptions.ArgumentOutOfRange class-signaling651603 -Node: SystemExceptions.ArgumentOutOfRange-accessing652025 -Node: SystemExceptions.BadReturn652619 -Node: SystemExceptions.BadReturn-accessing653109 -Node: SystemExceptions.CInterfaceError653369 -Node: SystemExceptions.CInterfaceError-accessing653880 -Node: SystemExceptions.EmptyCollection654164 -Node: SystemExceptions.EmptyCollection-accessing654661 -Node: SystemExceptions.EndOfStream654945 -Node: SystemExceptions.EndOfStream class-signaling655446 -Node: SystemExceptions.EndOfStream-accessing655802 -Node: SystemExceptions.FileError656238 -Node: SystemExceptions.FileError-accessing656727 -Node: SystemExceptions.IndexOutOfRange656987 -Node: SystemExceptions.IndexOutOfRange class-signaling657583 -Node: SystemExceptions.IndexOutOfRange-accessing657965 -Node: SystemExceptions.InvalidArgument658495 -Node: SystemExceptions.InvalidArgument-accessing659002 -Node: SystemExceptions.InvalidProcessState659275 -Node: SystemExceptions.InvalidProcessState-accessing659816 -Node: SystemExceptions.InvalidSize660116 -Node: SystemExceptions.InvalidSize-accessing660593 -Node: SystemExceptions.InvalidValue660861 -Node: SystemExceptions.InvalidValue class-signaling661398 -Node: SystemExceptions.InvalidValue-accessing661863 -Node: SystemExceptions.MustBeBoolean662370 -Node: SystemExceptions.MustBeBoolean class-signaling662861 -Node: SystemExceptions.MutationError663191 -Node: SystemExceptions.MutationError class-instance creation663730 -Node: SystemExceptions.MutationError-accessing664123 -Node: SystemExceptions.NoRunnableProcess664462 -Node: SystemExceptions.NoRunnableProcess-accessing664968 -Node: SystemExceptions.NotEnoughElements665260 -Node: SystemExceptions.NotEnoughElements class-signaling665826 -Node: SystemExceptions.NotEnoughElements-accessing666211 -Node: SystemExceptions.NotFound666763 -Node: SystemExceptions.NotFound class-accessing667289 -Node: SystemExceptions.NotFound-accessing667680 -Node: SystemExceptions.NotImplemented667986 -Node: SystemExceptions.NotImplemented-accessing668454 -Node: SystemExceptions.NotIndexable668734 -Node: SystemExceptions.NotIndexable-accessing669207 -Node: SystemExceptions.NotYetImplemented669479 -Node: SystemExceptions.NotYetImplemented-accessing670005 -Node: SystemExceptions.PackageNotAvailable670297 -Node: SystemExceptions.PackageNotAvailable class-still unclassified670821 -Node: SystemExceptions.PackageNotAvailable-description671259 -Node: SystemExceptions.PrimitiveFailed671696 -Node: SystemExceptions.PrimitiveFailed-accessing672193 -Node: SystemExceptions.ProcessBeingTerminated672477 -Node: SystemExceptions.ProcessBeingTerminated-accessing672971 -Node: SystemExceptions.ProcessTerminated673435 -Node: SystemExceptions.ProcessTerminated-accessing673970 -Node: SystemExceptions.ReadOnlyObject674262 -Node: SystemExceptions.ReadOnlyObject-accessing674748 -Node: SystemExceptions.SecurityError675028 -Node: SystemExceptions.SecurityError class-accessing675602 -Node: SystemExceptions.SecurityError-accessing675998 -Node: SystemExceptions.ShouldNotImplement676484 -Node: SystemExceptions.ShouldNotImplement-accessing677023 -Node: SystemExceptions.SubclassResponsibility677319 -Node: SystemExceptions.SubclassResponsibility-accessing677899 -Node: SystemExceptions.UserInterrupt678211 -Node: SystemExceptions.UserInterrupt-accessing678683 -Node: SystemExceptions.VerificationError678959 -Node: SystemExceptions.VerificationError-accessing679444 -Node: SystemExceptions.VMError679736 -Node: SystemExceptions.VMError-accessing680176 -Node: SystemExceptions.WrongArgumentCount680428 -Node: SystemExceptions.WrongArgumentCount-accessing680994 -Node: SystemExceptions.WrongClass681290 -Node: SystemExceptions.WrongClass class-signaling681918 -Node: SystemExceptions.WrongClass-accessing682590 -Node: SystemExceptions.WrongMessageSent683259 -Node: SystemExceptions.WrongMessageSent class-signaling683916 -Node: SystemExceptions.WrongMessageSent-accessing684349 -Node: TextCollector684954 -Node: TextCollector class-accessing685664 -Node: TextCollector-accessing686177 -Node: TextCollector-printing687012 -Node: TextCollector-set up687360 -Node: TextCollector-storing687939 -Node: Time688283 -Node: Time class-basic (UTC)689067 -Node: Time class-builtins689621 -Node: Time class-clocks690662 -Node: Time class-initialization691233 -Node: Time class-instance creation691593 -Node: Time-accessing (ANSI for DateAndTimes)692486 -Node: Time-accessing (non ANSI & for Durations)693018 -Node: Time-arithmetic693484 -Node: Time-comparing694075 -Node: True694376 -Node: True-basic694756 -Node: True-C hacks695722 -Node: True-printing695898 -Node: UndefinedObject696096 -Node: UndefinedObject-basic696832 -Node: UndefinedObject-class creation - alternative697131 -Node: UndefinedObject-class polymorphism699420 -Node: UndefinedObject-CObject interoperability702512 -Node: UndefinedObject-dependents access702940 -Node: UndefinedObject-printing703329 -Node: UndefinedObject-storing703823 -Node: UndefinedObject-testing704302 -Node: UnicodeCharacter705154 -Node: UnicodeCharacter class-built ins705746 -Node: UnicodeString706281 -Node: UnicodeString class-converting706860 -Node: UnicodeString class-multibyte encodings707238 -Node: UnicodeString-built-ins707737 -Node: UnicodeString-converting708010 -Node: UnicodeString-multibyte encodings708750 -Node: ValueAdaptor709258 -Node: ValueAdaptor class-creating instances709752 -Node: ValueAdaptor-accessing710056 -Node: ValueAdaptor-printing710479 -Node: ValueHolder710708 -Node: ValueHolder class-creating instances711335 -Node: ValueHolder-accessing711734 -Node: ValueHolder-initializing712043 -Node: VariableBinding712282 -Node: VariableBinding-printing712926 -Node: VariableBinding-saving and loading713257 -Node: VariableBinding-storing713730 -Node: VariableBinding-testing714221 -Node: VersionableObjectProxy714495 -Node: VersionableObjectProxy class-saving and restoring715403 -Node: VersionableObjectProxy-saving and restoring716443 -Node: VFS.ArchiveFileHandler716793 -Node: VFS.ArchiveFileHandler-ArchiveMemberHandler protocol717740 -Node: VFS.ArchiveFileHandler-directory operations718942 -Node: VFS.ArchiveFileHandler-querying719605 -Node: VFS.ArchiveFileHandler-TmpFileArchiveMemberHandler protocol720108 -Node: VFS.ArchiveMemberHandler720745 -Node: VFS.ArchiveMemberHandler-accessing721467 -Node: VFS.ArchiveMemberHandler-directory operations722880 -Node: VFS.ArchiveMemberHandler-file operations723517 -Node: VFS.ArchiveMemberHandler-initializing724199 -Node: VFS.ArchiveMemberHandler-testing724903 -Node: VFS.CStatStruct725929 -Node: VFS.CStatStruct class-accessing726323 -Node: VFS.CStatStruct-accessing726583 -Node: VFS.CStatStruct-debugging727008 -Node: VFS.DecodedFileHandler727234 -Node: VFS.DecodedFileHandler class-registering727625 -Node: VFS.DecodedFileHandler-files728763 -Node: VFS.FileHandlerWrapper729573 -Node: VFS.FileHandlerWrapper class-instance creation730168 -Node: VFS.FileHandlerWrapper-accessing730584 -Node: VFS.FileHandlerWrapper-delegation730994 -Node: VFS.RealFileHandler732562 -Node: VFS.RealFileHandler class-C call-outs733326 -Node: VFS.RealFileHandler class-initialization733610 -Node: VFS.RealFileHandler-accessing733953 -Node: VFS.RealFileHandler-directory operations735609 -Node: VFS.RealFileHandler-file operations736121 -Node: VFS.RealFileHandler-testing736890 -Node: VFS.TmpFileArchiveMemberHandler737526 -Node: VFS.TmpFileArchiveMemberHandler-directory operations737973 -Node: VFS.TmpFileArchiveMemberHandler-finalization738522 -Node: VFS.VFSHandler738915 -Node: VFS.VFSHandler class-initializing739710 -Node: VFS.VFSHandler class-instance creation740793 -Node: VFS.VFSHandler-accessing741152 -Node: VFS.VFSHandler-directory operations742537 -Node: VFS.VFSHandler-file operations743140 -Node: VFS.VFSHandler-releasing744285 -Node: VFS.VFSHandler-testing744607 -Node: Warning745523 -Node: Warning-exception description745854 -Node: WeakArray746074 -Node: WeakArray class-instance creation746579 -Node: WeakArray-accessing746919 -Node: WeakArray-conversion748583 -Node: WeakArray-loading749234 -Node: WeakIdentitySet749515 -Node: WeakIdentitySet-accessing750032 -Node: WeakKeyDictionary750322 -Node: WeakKeyDictionary class-hacks750926 -Node: WeakKeyDictionary-accessing751258 -Node: WeakKeyIdentityDictionary751593 -Node: WeakSet752133 -Node: WeakSet-accessing752665 -Node: WeakSet-copying753046 -Node: WeakSet-loading753440 -Node: WeakValueIdentityDictionary753708 -Node: WeakValueLookupTable754266 -Node: WeakValueLookupTable class-hacks754932 -Node: WeakValueLookupTable-hacks755246 -Node: WeakValueLookupTable-rehashing755860 -Node: WordArray756099 -Node: WriteStream756417 -Node: WriteStream class-instance creation756917 -Node: WriteStream-accessing-writing757611 -Node: WriteStream-positioning758453 -Node: ZeroDivide758679 -Node: ZeroDivide class-instance creation759184 -Node: ZeroDivide-accessing759580 -Node: ZeroDivide-description759849 -Node: Class index760080 -Node: Method index779467 -Node: Cross-reference1233018 +Node: AbstractNamespace11839 +Node: AbstractNamespace class-instance creation12588 +Node: AbstractNamespace-accessing13027 +Node: AbstractNamespace-compiling14259 +Node: AbstractNamespace-copying14870 +Node: AbstractNamespace-namespace hierarchy15320 +Node: AbstractNamespace-overrides for superspaces17716 +Node: AbstractNamespace-printing18742 +Node: AbstractNamespace-testing19327 +Node: AlternativeObjectProxy19578 +Node: AlternativeObjectProxy class-instance creation20320 +Node: AlternativeObjectProxy-accessing21265 +Node: ArithmeticError21829 +Node: ArithmeticError-description22288 +Node: Array22506 +Node: Array class-instance creation23220 +Node: Array-built ins23535 +Node: Array-mutating objects23955 +Node: Array-printing24291 +Node: Array-testing24785 +Node: ArrayedCollection24938 +Node: ArrayedCollection class-instance creation25777 +Node: ArrayedCollection-basic27474 +Node: ArrayedCollection-built ins28612 +Node: ArrayedCollection-copying Collections28888 +Node: ArrayedCollection-enumerating the elements of a collection30653 +Node: ArrayedCollection-storing31812 +Node: ArrayedCollection-streams32143 +Node: Association32391 +Node: Association class-basic33076 +Node: Association-accessing33327 +Node: Association-finalization33947 +Node: Association-printing34180 +Node: Association-storing34440 +Node: Association-testing34706 +Node: Autoload35204 +Node: Autoload class-instance creation35872 +Node: Autoload-accessing36388 +Node: Bag36728 +Node: Bag class-basic37436 +Node: Bag-adding37705 +Node: Bag-enumerating the elements of a collection38198 +Node: Bag-extracting items38568 +Node: Bag-printing38860 +Node: Bag-removing39077 +Node: Bag-storing39399 +Node: Bag-testing collections39629 +Node: Behavior40127 +Node: Behavior-accessing class hierarchy41853 +Node: Behavior-accessing instances and variables42592 +Node: Behavior-accessing the methodDictionary44061 +Node: Behavior-built ins45474 +Node: Behavior-builtin47183 +Node: Behavior-compilation (alternative)47953 +Node: Behavior-compiling methods48784 +Node: Behavior-creating a class hierarchy49392 +Node: Behavior-enumerating49841 +Node: Behavior-evaluating50907 +Node: Behavior-instance creation52206 +Node: Behavior-instance variables53000 +Node: Behavior-method dictionary53565 +Node: Behavior-parsing class declarations57140 +Node: Behavior-pluggable behavior (not yet implemented)57818 +Node: Behavior-printing hierarchy58965 +Node: Behavior-still unclassified59560 +Node: Behavior-support for lightweight classes60293 +Node: Behavior-testing functionality61483 +Node: Behavior-testing the class hierarchy61766 +Node: Behavior-testing the form of the instances62836 +Node: Behavior-testing the method dictionary63773 +Node: BindingDictionary65174 +Node: BindingDictionary-accessing66081 +Node: BindingDictionary-basic & copying67985 +Node: BindingDictionary-copying68541 +Node: BindingDictionary-forward declarations69222 +Node: BindingDictionary-printing69660 +Node: BindingDictionary-testing70068 +Node: BlockClosure70297 +Node: BlockClosure class-instance creation71530 +Node: BlockClosure class-testing72412 +Node: BlockClosure-accessing72720 +Node: BlockClosure-built ins74322 +Node: BlockClosure-control structures75345 +Node: BlockClosure-exception handling76026 +Node: BlockClosure-multiple process78042 +Node: BlockClosure-overriding79410 +Node: BlockClosure-testing79687 +Node: BlockClosure-unwind protection79961 +Node: BlockContext81446 +Node: BlockContext-accessing82275 +Node: BlockContext-debugging83802 +Node: BlockContext-printing84221 +Node: Boolean84460 +Node: Boolean class-testing85221 +Node: Boolean-basic85538 +Node: Boolean-C hacks86834 +Node: Boolean-overriding87096 +Node: Boolean-storing87339 +Node: ByteArray87755 +Node: ByteArray class-instance creation88419 +Node: ByteArray-basic88751 +Node: ByteArray-built ins89017 +Node: ByteArray-converting90062 +Node: ByteArray-more advanced accessing90521 +Node: ByteArray-storing97441 +Node: CAggregate97865 +Node: CAggregate class-accessing98169 +Node: CAggregate-accessing98459 +Node: CallinProcess98697 +Node: CArray99225 +Node: CArray-accessing99478 +Node: CArrayCType99685 +Node: CArrayCType class-instance creation100032 +Node: CArrayCType-accessing100727 +Node: CArrayCType-storing101133 +Node: CBoolean101328 +Node: CBoolean-accessing101635 +Node: CByte101966 +Node: CByte class-conversion102283 +Node: CByte-accessing102576 +Node: CCallable102988 +Node: CCallable class-instance creation103667 +Node: CCallable-accessing104138 +Node: CCallable-calling104432 +Node: CCallable-restoring106271 +Node: CCallbackDescriptor106482 +Node: CCallbackDescriptor class-instance creation107015 +Node: CCallbackDescriptor-accessing107445 +Node: CCallbackDescriptor-restoring107891 +Node: CChar108171 +Node: CChar class-accessing108489 +Node: CChar-accessing108856 +Node: CChar-conversion109201 +Node: CCompound109602 +Node: CCompound class-instance creation109954 +Node: CCompound class-subclass creation110379 +Node: CCompound-instance creation112006 +Node: CDouble112359 +Node: CDouble class-accessing112641 +Node: CDouble-accessing113018 +Node: CFloat113348 +Node: CFloat class-accessing113636 +Node: CFloat-accessing114008 +Node: CFunctionDescriptor114333 +Node: CFunctionDescriptor class-instance creation115123 +Node: CFunctionDescriptor class-testing115559 +Node: CFunctionDescriptor-accessing116070 +Node: CFunctionDescriptor-printing116504 +Node: CFunctionDescriptor-restoring116817 +Node: Character117096 +Node: Character class-built ins118399 +Node: Character class-constants119053 +Node: Character class-initializing lookup tables119861 +Node: Character class-instance creation120511 +Node: Character class-testing120883 +Node: Character-built ins121173 +Node: Character-coercion methods121962 +Node: Character-comparing122741 +Node: Character-converting123388 +Node: Character-printing123777 +Node: Character-storing124265 +Node: Character-testing124609 +Node: Character-testing functionality125497 +Node: CharacterArray125745 +Node: CharacterArray class-basic126482 +Node: CharacterArray class-multibyte encodings126969 +Node: CharacterArray-built ins127352 +Node: CharacterArray-comparing127801 +Node: CharacterArray-converting129984 +Node: CharacterArray-multibyte encodings131526 +Node: CharacterArray-string processing132101 +Node: CharacterArray-testing functionality135242 +Node: CInt135502 +Node: CInt class-accessing135773 +Node: CInt-accessing136115 +Node: Class136450 +Node: Class class-initialize137444 +Node: Class-accessing instances and variables137691 +Node: Class-filing139645 +Node: Class-instance creation140077 +Node: Class-instance creation - alternative143038 +Node: Class-pragmas145216 +Node: Class-printing145730 +Node: Class-saving and loading146127 +Node: Class-security147509 +Node: Class-still unclassified147820 +Node: Class-testing148142 +Node: Class-testing functionality148397 +Node: ClassDescription148630 +Node: ClassDescription-compiling149414 +Node: ClassDescription-conversion150256 +Node: ClassDescription-copying150723 +Node: ClassDescription-filing151934 +Node: ClassDescription-organization of messages and classes152731 +Node: ClassDescription-parsing class declarations154160 +Node: ClassDescription-printing154669 +Node: ClassDescription-still unclassified155466 +Node: CLong156019 +Node: CLong class-accessing156303 +Node: CLong-accessing156670 +Node: CLongDouble156990 +Node: CLongDouble class-accessing157289 +Node: CLongDouble-accessing157686 +Node: CObject158036 +Node: CObject class-conversion159065 +Node: CObject class-instance creation159329 +Node: CObject class-primitive allocation160023 +Node: CObject class-subclassing160465 +Node: CObject-accessing160738 +Node: CObject-basic161683 +Node: CObject-C data access161958 +Node: CObject-conversion162572 +Node: CObject-finalization163235 +Node: CObject-pointer-like behavior163713 +Node: CObject-testing functionality166027 +Node: Collection166251 +Node: Collection class-instance creation167281 +Node: Collection class-multibyte encodings168729 +Node: Collection-adding169069 +Node: Collection-concatenating169435 +Node: Collection-converting169995 +Node: Collection-copying Collections171273 +Node: Collection-enumeration171825 +Node: Collection-finalization173460 +Node: Collection-printing173779 +Node: Collection-removing174136 +Node: Collection-storing175092 +Node: Collection-testing collections175365 +Node: CompiledBlock176129 +Node: CompiledBlock class-instance creation176637 +Node: CompiledBlock-accessing177406 +Node: CompiledBlock-basic178754 +Node: CompiledBlock-printing179477 +Node: CompiledBlock-saving and loading179758 +Node: CompiledCode180193 +Node: CompiledCode class-cache flushing181056 +Node: CompiledCode class-instance creation181426 +Node: CompiledCode class-tables182025 +Node: CompiledCode-accessing183260 +Node: CompiledCode-basic184900 +Node: CompiledCode-copying185665 +Node: CompiledCode-debugging185904 +Node: CompiledCode-decoding bytecodes186177 +Node: CompiledCode-literals - iteration186602 +Node: CompiledCode-security187164 +Node: CompiledCode-testing accesses187496 +Node: CompiledCode-translation188681 +Node: CompiledMethod188955 +Node: CompiledMethod class-c call-outs189998 +Node: CompiledMethod class-instance creation190576 +Node: CompiledMethod class-lean images191493 +Node: CompiledMethod-accessing191828 +Node: CompiledMethod-attributes193650 +Node: CompiledMethod-basic194606 +Node: CompiledMethod-c call-outs194923 +Node: CompiledMethod-compiling195480 +Node: CompiledMethod-invoking196330 +Node: CompiledMethod-printing197377 +Node: CompiledMethod-saving and loading197737 +Node: CompiledMethod-source code198207 +Node: CompiledMethod-testing198913 +Node: ContextPart199506 +Node: ContextPart class-built ins200327 +Node: ContextPart class-exception handling200642 +Node: ContextPart-accessing201313 +Node: ContextPart-built ins204738 +Node: ContextPart-copying205438 +Node: ContextPart-debugging205798 +Node: ContextPart-enumerating206911 +Node: ContextPart-printing207519 +Node: ContextPart-security checks207925 +Node: Continuation208491 +Node: Continuation class-instance creation209161 +Node: Continuation-invocation209835 +Node: CPtr211202 +Node: CPtr-accessing211444 +Node: CPtrCType211993 +Node: CPtrCType class-instance creation212321 +Node: CPtrCType-accessing212692 +Node: CPtrCType-storing213193 +Node: CScalar213378 +Node: CScalar class-instance creation213674 +Node: CScalar-accessing214277 +Node: CScalarCType214806 +Node: CScalarCType-accessing215104 +Node: CScalarCType-storing215446 +Node: CShort215682 +Node: CShort class-accessing215966 +Node: CShort-accessing216338 +Node: CSmalltalk216663 +Node: CSmalltalk class-accessing216958 +Node: CSmalltalk-accessing217350 +Node: CString217695 +Node: CString class-accessing218743 +Node: CString class-instance creation219037 +Node: CString-accessing219541 +Node: CStringCType220070 +Node: CStringCType-accessing220339 +Node: CStruct220554 +Node: CStruct class-subclass creation220814 +Node: CType221055 +Node: CType class-C instance creation222219 +Node: CType class-initialization222913 +Node: CType-accessing223170 +Node: CType-C instance creation224022 +Node: CType-storing224737 +Node: CUChar224948 +Node: CUChar class-getting info225223 +Node: CUChar-accessing225604 +Node: CUInt225932 +Node: CUInt class-accessing226201 +Node: CUInt-accessing226568 +Node: CULong226888 +Node: CULong class-accessing227161 +Node: CULong-accessing227533 +Node: CUnion227858 +Node: CUnion class-subclass creation228110 +Node: CUShort228347 +Node: CUShort class-accessing228624 +Node: CUShort-accessing229001 +Node: Date229331 +Node: Date class-basic230803 +Node: Date class-instance creation (ANSI)231931 +Node: Date class-instance creation (Blue Book)232421 +Node: Date-basic233741 +Node: Date-compatibility (non-ANSI)234285 +Node: Date-date computations234698 +Node: Date-printing236409 +Node: Date-storing236637 +Node: Date-testing236860 +Node: DateTime237179 +Node: DateTime class-information237841 +Node: DateTime class-instance creation238132 +Node: DateTime class-instance creation (non-ANSI)239433 +Node: DateTime-basic240174 +Node: DateTime-computations240521 +Node: DateTime-printing241213 +Node: DateTime-splitting in dates & times241479 +Node: DateTime-storing242078 +Node: DateTime-testing242343 +Node: DateTime-time zones242718 +Node: DeferredVariableBinding243848 +Node: DeferredVariableBinding class-basic244449 +Node: DeferredVariableBinding-basic245088 +Node: DeferredVariableBinding-storing245576 +Node: Delay245957 +Node: Delay class-instance creation246771 +Node: Delay class-timer process247248 +Node: Delay-accessing248072 +Node: Delay-comparing248359 +Node: Delay-delaying248640 +Node: Delay-initialization248956 +Node: Delay-instance creation249229 +Node: DelayedAdaptor249506 +Node: DelayedAdaptor-accessing250042 +Node: Dictionary250421 +Node: Dictionary class-instance creation251629 +Node: Dictionary-accessing252073 +Node: Dictionary-awful ST-80 compatibility hacks254051 +Node: Dictionary-dictionary enumerating254514 +Node: Dictionary-dictionary removing255602 +Node: Dictionary-dictionary testing256471 +Node: Dictionary-namespace protocol257145 +Node: Dictionary-printing259276 +Node: Dictionary-rehashing259640 +Node: Dictionary-storing259857 +Node: Dictionary-testing260119 +Node: DirectedMessage260395 +Node: DirectedMessage class-creating instances260971 +Node: DirectedMessage-accessing261697 +Node: DirectedMessage-basic262005 +Node: DirectedMessage-multiple process262429 +Node: DirectedMessage-saving and loading263027 +Node: Directory263465 +Node: Directory class-file name management264133 +Node: Directory class-file operations264672 +Node: Directory class-reading system defaults265357 +Node: DLD266481 +Node: DLD class-C call-outs267161 +Node: DLD class-dynamic linking267413 +Node: DumperProxy268759 +Node: DumperProxy class-accessing269295 +Node: DumperProxy class-instance creation269760 +Node: DumperProxy-saving and restoring270265 +Node: Duration270680 +Node: Duration class-instance creation271091 +Node: Duration class-instance creation (non ANSI)271591 +Node: Duration-arithmetics272070 +Node: Error273258 +Node: Error-exception description273583 +Node: Exception273924 +Node: Exception class-comparison275062 +Node: Exception class-creating ExceptionCollections275526 +Node: Exception class-initialization275950 +Node: Exception class-instance creation276332 +Node: Exception class-interoperability with TrappableEvents276916 +Node: Exception-comparison277390 +Node: Exception-exception description277838 +Node: Exception-exception signaling278281 +Node: ExceptionSet278674 +Node: ExceptionSet class-instance creation279256 +Node: ExceptionSet-enumerating279521 +Node: False280085 +Node: False-basic280484 +Node: False-C hacks281478 +Node: False-printing281658 +Node: File281859 +Node: File class-C functions282610 +Node: File class-file operations282886 +Node: File class-initialization283805 +Node: File class-instance creation284074 +Node: File class-reading system defaults284561 +Node: File class-testing284915 +Node: File-accessing285567 +Node: File-basic287315 +Node: File-directory operations287603 +Node: File-file name management288095 +Node: File-file operations288492 +Node: File-still unclassified289417 +Node: File-testing289706 +Node: FileDescriptor290554 +Node: FileDescriptor class-initialization291890 +Node: FileDescriptor class-instance creation292228 +Node: FileDescriptor class-still unclassified297324 +Node: FileDescriptor-accessing298394 +Node: FileDescriptor-basic299711 +Node: FileDescriptor-binary I/O301234 +Node: FileDescriptor-built ins302885 +Node: FileDescriptor-class type methods304973 +Node: FileDescriptor-initialize-release305403 +Node: FileDescriptor-low-level access305917 +Node: FileDescriptor-overriding inherited methods306466 +Node: FileDescriptor-polymorphism307078 +Node: FileDescriptor-positioning307399 +Node: FileDescriptor-printing307706 +Node: FileDescriptor-testing307989 +Node: FilePath308213 +Node: FilePath class-file name management309211 +Node: FilePath class-still unclassified310875 +Node: FilePath-accessing311182 +Node: FilePath-converting313204 +Node: FilePath-decoration313417 +Node: FilePath-directory operations313733 +Node: FilePath-enumerating314067 +Node: FilePath-file name management316237 +Node: FilePath-file operations317226 +Node: FilePath-printing319252 +Node: FilePath-still unclassified319591 +Node: FilePath-testing319931 +Node: FilePath-virtual filesystems321292 +Node: FileSegment321495 +Node: FileSegment class-basic322145 +Node: FileSegment class-installing322662 +Node: FileSegment-basic323012 +Node: FileSegment-equality324035 +Node: FileSegment-printing324347 +Node: FileStream324795 +Node: FileStream class-file-in325557 +Node: FileStream class-standard streams329094 +Node: FileStream-basic329834 +Node: FileStream-buffering330720 +Node: FileStream-compiling331853 +Node: FileStream-initialize-release332218 +Node: FileStream-overriding inherited methods332513 +Node: FileStream-testing333400 +Node: Float333622 +Node: Float class-byte-order dependancies334536 +Node: Float class-characterization334816 +Node: Float-arithmetic335838 +Node: Float-basic336248 +Node: Float-built ins336443 +Node: Float-coercing337384 +Node: Float-coercion337888 +Node: Float-comparing338151 +Node: Float-printing338801 +Node: Float-storing339026 +Node: Float-testing339436 +Node: Float-testing functionality340205 +Node: Float-transcendental operations340443 +Node: FloatD340928 +Node: FloatD class-byte-order dependencies341433 +Node: FloatD class-characterization341828 +Node: FloatD class-converting343102 +Node: FloatD-built ins343358 +Node: FloatD-coercing344595 +Node: FloatE344998 +Node: FloatE class-byte-order dependancies345553 +Node: FloatE class-byte-order dependencies345845 +Node: FloatE class-characterization346211 +Node: FloatE class-converting347773 +Node: FloatE-built ins348029 +Node: FloatE-coercing349266 +Node: FloatQ349669 +Node: FloatQ class-byte-order dependancies350215 +Node: FloatQ class-characterization350500 +Node: FloatQ class-converting352062 +Node: FloatQ-built ins352318 +Node: FloatQ-coercing353555 +Node: FloatQ-misc math353983 +Node: Fraction354180 +Node: Fraction class-converting354971 +Node: Fraction class-instance creation355215 +Node: Fraction-accessing355600 +Node: Fraction-arithmetic355890 +Node: Fraction-coercing356614 +Node: Fraction-coercion357252 +Node: Fraction-comparing357533 +Node: Fraction-converting358035 +Node: Fraction-optimized cases358536 +Node: Fraction-printing358970 +Node: Fraction-testing359302 +Node: Generator359509 +Node: Generator class-instance creation361815 +Node: Generator-stream protocol362562 +Node: Getopt363625 +Node: Getopt class-instance creation363991 +Node: Halt366630 +Node: Halt-description366924 +Node: HashedCollection367175 +Node: HashedCollection class-instance creation368036 +Node: HashedCollection-accessing368508 +Node: HashedCollection-builtins369088 +Node: HashedCollection-copying369865 +Node: HashedCollection-enumerating the elements of a collection370343 +Node: HashedCollection-rehashing370719 +Node: HashedCollection-removing371005 +Node: HashedCollection-saving and loading371414 +Node: HashedCollection-storing371928 +Node: HashedCollection-testing collections372255 +Node: HomedAssociation373202 +Node: HomedAssociation class-basic373772 +Node: HomedAssociation-accessing374074 +Node: HomedAssociation-finalization374440 +Node: HomedAssociation-storing375060 +Node: IdentityDictionary375329 +Node: IdentitySet375722 +Node: IdentitySet-testing376121 +Node: Integer376382 +Node: Integer class-converting377211 +Node: Integer-accessing377572 +Node: Integer-basic377811 +Node: Integer-bit operators378021 +Node: Integer-converting379389 +Node: Integer-extension380115 +Node: Integer-iterators380428 +Node: Integer-math methods380794 +Node: Integer-printing381695 +Node: Integer-storing382941 +Node: Integer-testing functionality383268 +Node: Interval383542 +Node: Interval class-instance creation384136 +Node: Interval-basic384738 +Node: Interval-printing385424 +Node: Interval-storing385757 +Node: Interval-testing386004 +Node: Iterable386275 +Node: Iterable class-multibyte encodings386793 +Node: Iterable-enumeration387085 +Node: Iterable-streaming389734 +Node: LargeArray390034 +Node: LargeArray-overridden390437 +Node: LargeArrayedCollection390629 +Node: LargeArrayedCollection class-instance creation391169 +Node: LargeArrayedCollection-accessing391528 +Node: LargeArrayedCollection-basic392032 +Node: LargeByteArray392433 +Node: LargeByteArray-overridden392861 +Node: LargeInteger393302 +Node: LargeInteger-accessing394137 +Node: LargeInteger-arithmetic394376 +Node: LargeInteger-bit operations395503 +Node: LargeInteger-built-ins396178 +Node: LargeInteger-coercion397257 +Node: LargeInteger-disabled397803 +Node: LargeInteger-primitive operations398178 +Node: LargeInteger-testing398658 +Node: LargeNegativeInteger399302 +Node: LargeNegativeInteger-converting400004 +Node: LargeNegativeInteger-numeric testing400392 +Node: LargeNegativeInteger-reverting to LargePositiveInteger400927 +Node: LargePositiveInteger401499 +Node: LargePositiveInteger-arithmetic402376 +Node: LargePositiveInteger-converting402852 +Node: LargePositiveInteger-helper byte-level methods403406 +Node: LargePositiveInteger-numeric testing405143 +Node: LargePositiveInteger-primitive operations405679 +Node: LargeWordArray406373 +Node: LargeWordArray-overridden406803 +Node: LargeZeroInteger407102 +Node: LargeZeroInteger-accessing407930 +Node: LargeZeroInteger-arithmetic408195 +Node: LargeZeroInteger-numeric testing409125 +Node: LargeZeroInteger-printing409462 +Node: Link409760 +Node: Link class-instance creation410307 +Node: Link-basic410541 +Node: Link-iteration410796 +Node: LinkedList411259 +Node: LinkedList-accessing411869 +Node: LinkedList-adding412187 +Node: LinkedList-enumerating412922 +Node: LinkedList-testing413404 +Node: LookupKey413762 +Node: LookupKey class-basic414318 +Node: LookupKey-accessing414562 +Node: LookupKey-printing414829 +Node: LookupKey-storing415078 +Node: LookupKey-testing415336 +Node: LookupTable415772 +Node: LookupTable class-instance creation416647 +Node: LookupTable-accessing416909 +Node: LookupTable-enumerating417718 +Node: LookupTable-hashing418243 +Node: LookupTable-rehashing418484 +Node: LookupTable-removing418709 +Node: LookupTable-storing419211 +Node: Magnitude419450 +Node: Magnitude-basic419906 +Node: Magnitude-misc methods420438 +Node: MappedCollection420854 +Node: MappedCollection class-instance creation422229 +Node: MappedCollection-basic422682 +Node: Memory424437 +Node: Memory class-accessing424997 +Node: Message429129 +Node: Message class-creating instances429805 +Node: Message-accessing430198 +Node: Message-basic430640 +Node: Message-printing430939 +Node: MessageNotUnderstood431271 +Node: MessageNotUnderstood-accessing431765 +Node: MessageNotUnderstood-description432104 +Node: Metaclass432385 +Node: Metaclass class-instance creation433428 +Node: Metaclass-accessing433713 +Node: Metaclass-basic434159 +Node: Metaclass-compiling methods435510 +Node: Metaclass-delegation435769 +Node: Metaclass-filing437449 +Node: Metaclass-printing437740 +Node: Metaclass-testing functionality438295 +Node: MethodContext438556 +Node: MethodContext-accessing439098 +Node: MethodContext-debugging440663 +Node: MethodContext-printing441445 +Node: MethodDictionary441691 +Node: MethodDictionary-adding442222 +Node: MethodDictionary-rehashing442471 +Node: MethodDictionary-removing442725 +Node: MethodInfo443137 +Node: MethodInfo-accessing443623 +Node: MethodInfo-equality444568 +Node: Namespace444861 +Node: Namespace class-accessing445469 +Node: Namespace class-disabling instance creation445872 +Node: Namespace class-initialization446268 +Node: Namespace-accessing446705 +Node: Namespace-namespace hierarchy446994 +Node: Namespace-overrides for superspaces447492 +Node: Namespace-printing449289 +Node: NetClients.URIResolver449793 +Node: NetClients.URIResolver class-api450248 +Node: NetClients.URIResolver class-instance creation451398 +Node: NetClients.URL451775 +Node: NetClients.URL class-encoding URLs452546 +Node: NetClients.URL class-instance creation453051 +Node: NetClients.URL-accessing453876 +Node: NetClients.URL-comparing456601 +Node: NetClients.URL-copying457127 +Node: NetClients.URL-initialize-release457664 +Node: NetClients.URL-printing457963 +Node: NetClients.URL-still unclassified458268 +Node: NetClients.URL-testing458567 +Node: NetClients.URL-utilities459353 +Node: Notification459665 +Node: Notification-exception description460118 +Node: NullProxy460580 +Node: NullProxy class-instance creation461192 +Node: NullProxy-accessing461463 +Node: NullValueHolder461715 +Node: NullValueHolder class-creating instances462304 +Node: NullValueHolder-accessing462651 +Node: Number462999 +Node: Number class-converting463927 +Node: Number class-testing464387 +Node: Number-arithmetic464655 +Node: Number-coercion465987 +Node: Number-comparing466260 +Node: Number-converting466811 +Node: Number-copying468166 +Node: Number-error raising468481 +Node: Number-misc math468852 +Node: Number-point creation471017 +Node: Number-retrying471314 +Node: Number-shortcuts and iterators473119 +Node: Number-testing474368 +Node: Number-truncation and round off475804 +Node: Object476619 +Node: Object class-initialization477575 +Node: Object-built ins478174 +Node: Object-change and update486893 +Node: Object-class type methods488100 +Node: Object-conversion488919 +Node: Object-copying489166 +Node: Object-debugging489830 +Node: Object-dependents access490159 +Node: Object-error raising490863 +Node: Object-finalization491550 +Node: Object-printing492543 +Node: Object-relational operators494288 +Node: Object-saving and loading494652 +Node: Object-storing495655 +Node: Object-syntax shortcuts496353 +Node: Object-testing functionality496680 +Node: Object-VM callbacks498280 +Node: ObjectDumper498765 +Node: ObjectDumper class-establishing proxy classes499970 +Node: ObjectDumper class-instance creation500819 +Node: ObjectDumper class-shortcuts501232 +Node: ObjectDumper class-testing501626 +Node: ObjectDumper-accessing502070 +Node: ObjectDumper-loading/dumping objects502578 +Node: ObjectDumper-stream interface503018 +Node: ObjectMemory503400 +Node: ObjectMemory class-accessing504485 +Node: ObjectMemory class-builtins504752 +Node: ObjectMemory class-initialization508041 +Node: ObjectMemory class-saving the image508371 +Node: ObjectMemory-accessing508757 +Node: ObjectMemory-builtins513711 +Node: ObjectMemory-derived information513996 +Node: OrderedCollection514983 +Node: OrderedCollection class-instance creation515705 +Node: OrderedCollection-accessing516063 +Node: OrderedCollection-adding516628 +Node: OrderedCollection-removing518692 +Node: Package519347 +Node: Package class-instance creation519821 +Node: Package-accessing520077 +Node: PackageLoader523404 +Node: PackageLoader class-accessing523968 +Node: PackageLoader class-loading526592 +Node: PackageLoader class-testing526992 +Node: Permission527283 +Node: Permission class-testing527752 +Node: Permission-accessing528502 +Node: Permission-testing529080 +Node: PluggableAdaptor529330 +Node: PluggableAdaptor class-creating instances529967 +Node: PluggableAdaptor-accessing531063 +Node: PluggableProxy531364 +Node: PluggableProxy class-accessing532002 +Node: PluggableProxy-saving and restoring532452 +Node: Point532887 +Node: Point class-instance creation533626 +Node: Point-accessing533939 +Node: Point-arithmetic534373 +Node: Point-comparing535092 +Node: Point-converting535905 +Node: Point-point functions536424 +Node: Point-printing537372 +Node: Point-storing537606 +Node: Point-truncation and round off537854 +Node: PositionableStream538266 +Node: PositionableStream class-instance creation539284 +Node: PositionableStream-accessing-reading539809 +Node: PositionableStream-class type methods541567 +Node: PositionableStream-compiling542102 +Node: PositionableStream-positioning542596 +Node: PositionableStream-still unclassified543503 +Node: PositionableStream-testing543845 +Node: PositionableStream-truncating544334 +Node: Process544634 +Node: Process-accessing545214 +Node: Process-basic546339 +Node: Process-builtins548051 +Node: Process-printing549171 +Node: ProcessEnvironment549385 +Node: ProcessEnvironment class-disabled550188 +Node: ProcessEnvironment class-singleton550481 +Node: ProcessEnvironment-accessing550815 +Node: ProcessEnvironment-dictionary removing552097 +Node: ProcessEnvironment-dictionary testing552924 +Node: ProcessorScheduler553235 +Node: ProcessorScheduler class-instance creation553925 +Node: ProcessorScheduler-basic554239 +Node: ProcessorScheduler-built ins556092 +Node: ProcessorScheduler-idle tasks556794 +Node: ProcessorScheduler-printing557298 +Node: ProcessorScheduler-priorities557617 +Node: ProcessorScheduler-storing559283 +Node: ProcessorScheduler-timed invocation559624 +Node: Promise560186 +Node: Promise class-creating instances560813 +Node: Promise-accessing561224 +Node: Promise-initializing561679 +Node: Promise-printing561923 +Node: Promise-still unclassified562165 +Node: Random562421 +Node: Random class-instance creation562882 +Node: Random class-shortcuts563264 +Node: Random-basic563654 +Node: Random-testing564084 +Node: ReadStream564410 +Node: ReadStream class-instance creation564817 +Node: ReadWriteStream565237 +Node: ReadWriteStream class-instance creation565735 +Node: ReadWriteStream-positioning566373 +Node: Rectangle566692 +Node: Rectangle class-instance creation567493 +Node: Rectangle-accessing568051 +Node: Rectangle-copying570465 +Node: Rectangle-printing570699 +Node: Rectangle-rectangle functions571041 +Node: Rectangle-testing572944 +Node: Rectangle-transforming573774 +Node: Rectangle-truncation and round off574414 +Node: RecursionLock574719 +Node: RecursionLock class-instance creation575123 +Node: RecursionLock-accessing575373 +Node: RecursionLock-mutual exclusion575986 +Node: RecursionLock-printing576361 +Node: Regex576627 +Node: Regex class-instance creation577642 +Node: Regex-basic577901 +Node: Regex-conversion578323 +Node: Regex-printing578629 +Node: RegexResults579289 +Node: RegexResults-accessing579907 +Node: RegexResults-testing581563 +Node: RootNamespace582595 +Node: RootNamespace class-instance creation583155 +Node: RootNamespace-namespace hierarchy583504 +Node: RootNamespace-overrides for superspaces583951 +Node: RootNamespace-printing584582 +Node: RunArray585106 +Node: RunArray class-instance creation586079 +Node: RunArray-accessing586367 +Node: RunArray-adding586717 +Node: RunArray-basic587807 +Node: RunArray-copying588128 +Node: RunArray-enumerating588500 +Node: RunArray-removing588976 +Node: RunArray-searching589457 +Node: RunArray-testing589887 +Node: ScaledDecimal590146 +Node: ScaledDecimal class-instance creation590924 +Node: ScaledDecimal-arithmetic591339 +Node: ScaledDecimal-coercion592074 +Node: ScaledDecimal-comparing593105 +Node: ScaledDecimal-constants593757 +Node: ScaledDecimal-printing594075 +Node: ScaledDecimal-storing594551 +Node: SecurityPolicy594992 +Node: SecurityPolicy-modifying595580 +Node: SecurityPolicy-querying595932 +Node: Semaphore596191 +Node: Semaphore class-instance creation596867 +Node: Semaphore-accessing597256 +Node: Semaphore-builtins597756 +Node: Semaphore-mutual exclusion599117 +Node: Semaphore-printing599467 +Node: SequenceableCollection599713 +Node: SequenceableCollection class-instance creation600634 +Node: SequenceableCollection-basic601128 +Node: SequenceableCollection-comparing605772 +Node: SequenceableCollection-concatenating606301 +Node: SequenceableCollection-copying SequenceableCollections607730 +Node: SequenceableCollection-enumerating610495 +Node: SequenceableCollection-replacing items614057 +Node: SequenceableCollection-sorting615020 +Node: SequenceableCollection-still unclassified615605 +Node: SequenceableCollection-testing615966 +Node: Set616530 +Node: Set-arithmetic616962 +Node: Set-awful ST-80 compatibility hacks617307 +Node: Set-comparing617684 +Node: SharedQueue618095 +Node: SharedQueue class-instance creation618629 +Node: SharedQueue-accessing619014 +Node: Signal619532 +Node: Signal-accessing620200 +Node: Signal-copying621055 +Node: Signal-exception handling621328 +Node: SingletonProxy623959 +Node: SingletonProxy class-accessing624575 +Node: SingletonProxy class-instance creation624956 +Node: SingletonProxy-saving and restoring625413 +Node: SmallInteger625856 +Node: SmallInteger class-getting limits626593 +Node: SmallInteger class-testing627095 +Node: SmallInteger-bit arithmetic627407 +Node: SmallInteger-built ins627774 +Node: SmallInteger-builtins630204 +Node: SmallInteger-coercion630963 +Node: SmallInteger-coercion methods631277 +Node: SmallInteger-testing functionality631649 +Node: SortedCollection631898 +Node: SortedCollection class-hacking633042 +Node: SortedCollection class-instance creation633327 +Node: SortedCollection-basic633856 +Node: SortedCollection-copying634417 +Node: SortedCollection-disabled634740 +Node: SortedCollection-enumerating635610 +Node: SortedCollection-saving and loading635956 +Node: SortedCollection-searching636318 +Node: Stream636921 +Node: Stream-accessing-reading638079 +Node: Stream-accessing-writing640972 +Node: Stream-basic641685 +Node: Stream-buffering641876 +Node: Stream-built ins642513 +Node: Stream-character writing643635 +Node: Stream-concatenating644506 +Node: Stream-enumerating645179 +Node: Stream-filing out645557 +Node: Stream-filtering645917 +Node: Stream-polymorphism647507 +Node: Stream-positioning647913 +Node: Stream-printing649062 +Node: Stream-still unclassified649828 +Node: Stream-storing650096 +Node: Stream-streaming protocol650485 +Node: Stream-testing650947 +Node: String651472 +Node: String class-instance creation652578 +Node: String class-multibyte encodings653062 +Node: String-accessing653390 +Node: String-basic653787 +Node: String-built ins654196 +Node: String-converting655745 +Node: String-filesystem656226 +Node: String-printing656598 +Node: String-regex657446 +Node: String-testing functionality664651 +Node: Symbol664855 +Node: Symbol class-built ins665693 +Node: Symbol class-instance creation665924 +Node: Symbol class-symbol table667079 +Node: Symbol-basic668504 +Node: Symbol-built ins669273 +Node: Symbol-converting669598 +Node: Symbol-misc669954 +Node: Symbol-storing670134 +Node: Symbol-testing671040 +Node: Symbol-testing functionality671324 +Node: SymLink671561 +Node: SymLink class-instance creation672122 +Node: SymLink-accessing672458 +Node: SymLink-iteration672809 +Node: SymLink-printing673040 +Node: SystemDictionary673256 +Node: SystemDictionary class-initialization674213 +Node: SystemDictionary-basic674488 +Node: SystemDictionary-builtins674831 +Node: SystemDictionary-c call-outs676177 +Node: SystemDictionary-command-line676586 +Node: SystemDictionary-miscellaneous679277 +Node: SystemDictionary-printing679743 +Node: SystemDictionary-special accessing680178 +Node: SystemDictionary-testing680791 +Node: SystemExceptions.AlreadyDefined681141 +Node: SystemExceptions.AlreadyDefined-accessing681667 +Node: SystemExceptions.ArgumentOutOfRange681935 +Node: SystemExceptions.ArgumentOutOfRange class-signaling682535 +Node: SystemExceptions.ArgumentOutOfRange-accessing682957 +Node: SystemExceptions.BadReturn683551 +Node: SystemExceptions.BadReturn-accessing684041 +Node: SystemExceptions.CInterfaceError684301 +Node: SystemExceptions.CInterfaceError-accessing684812 +Node: SystemExceptions.EmptyCollection685096 +Node: SystemExceptions.EmptyCollection-accessing685593 +Node: SystemExceptions.EndOfStream685877 +Node: SystemExceptions.EndOfStream class-signaling686378 +Node: SystemExceptions.EndOfStream-accessing686734 +Node: SystemExceptions.FileError687170 +Node: SystemExceptions.FileError-accessing687659 +Node: SystemExceptions.IndexOutOfRange687919 +Node: SystemExceptions.IndexOutOfRange class-signaling688515 +Node: SystemExceptions.IndexOutOfRange-accessing688897 +Node: SystemExceptions.InvalidArgument689427 +Node: SystemExceptions.InvalidArgument-accessing689934 +Node: SystemExceptions.InvalidProcessState690207 +Node: SystemExceptions.InvalidProcessState-accessing690748 +Node: SystemExceptions.InvalidSize691048 +Node: SystemExceptions.InvalidSize-accessing691525 +Node: SystemExceptions.InvalidValue691793 +Node: SystemExceptions.InvalidValue class-signaling692330 +Node: SystemExceptions.InvalidValue-accessing692795 +Node: SystemExceptions.MustBeBoolean693302 +Node: SystemExceptions.MustBeBoolean class-signaling693793 +Node: SystemExceptions.MutationError694123 +Node: SystemExceptions.MutationError class-instance creation694662 +Node: SystemExceptions.MutationError-accessing695055 +Node: SystemExceptions.NoRunnableProcess695394 +Node: SystemExceptions.NoRunnableProcess-accessing695900 +Node: SystemExceptions.NotEnoughElements696192 +Node: SystemExceptions.NotEnoughElements class-signaling696758 +Node: SystemExceptions.NotEnoughElements-accessing697143 +Node: SystemExceptions.NotFound697695 +Node: SystemExceptions.NotFound class-accessing698221 +Node: SystemExceptions.NotFound-accessing698612 +Node: SystemExceptions.NotImplemented698918 +Node: SystemExceptions.NotImplemented-accessing699386 +Node: SystemExceptions.NotIndexable699666 +Node: SystemExceptions.NotIndexable-accessing700139 +Node: SystemExceptions.NotYetImplemented700411 +Node: SystemExceptions.NotYetImplemented-accessing700937 +Node: SystemExceptions.PackageNotAvailable701229 +Node: SystemExceptions.PackageNotAvailable class-still unclassified701753 +Node: SystemExceptions.PackageNotAvailable-description702191 +Node: SystemExceptions.PrimitiveFailed702628 +Node: SystemExceptions.PrimitiveFailed-accessing703125 +Node: SystemExceptions.ProcessBeingTerminated703409 +Node: SystemExceptions.ProcessBeingTerminated-accessing703903 +Node: SystemExceptions.ProcessTerminated704367 +Node: SystemExceptions.ProcessTerminated-accessing704902 +Node: SystemExceptions.ReadOnlyObject705194 +Node: SystemExceptions.ReadOnlyObject-accessing705680 +Node: SystemExceptions.SecurityError705960 +Node: SystemExceptions.SecurityError class-accessing706534 +Node: SystemExceptions.SecurityError-accessing706930 +Node: SystemExceptions.ShouldNotImplement707416 +Node: SystemExceptions.ShouldNotImplement-accessing707955 +Node: SystemExceptions.SubclassResponsibility708251 +Node: SystemExceptions.SubclassResponsibility-accessing708836 +Node: SystemExceptions.UnhandledException709148 +Node: SystemExceptions.UnhandledException-accessing709660 +Node: SystemExceptions.UserInterrupt710008 +Node: SystemExceptions.UserInterrupt-accessing710476 +Node: SystemExceptions.VerificationError710752 +Node: SystemExceptions.VerificationError-accessing711237 +Node: SystemExceptions.VMError711529 +Node: SystemExceptions.VMError-accessing711969 +Node: SystemExceptions.WrongArgumentCount712221 +Node: SystemExceptions.WrongArgumentCount-accessing712787 +Node: SystemExceptions.WrongClass713083 +Node: SystemExceptions.WrongClass class-signaling713711 +Node: SystemExceptions.WrongClass-accessing714383 +Node: SystemExceptions.WrongMessageSent715052 +Node: SystemExceptions.WrongMessageSent class-signaling715709 +Node: SystemExceptions.WrongMessageSent-accessing716142 +Node: TextCollector716747 +Node: TextCollector class-accessing717457 +Node: TextCollector-accessing717970 +Node: TextCollector-printing718805 +Node: TextCollector-set up719153 +Node: TextCollector-storing719732 +Node: Time720076 +Node: Time class-basic (UTC)720860 +Node: Time class-builtins721414 +Node: Time class-clocks722455 +Node: Time class-initialization723026 +Node: Time class-instance creation723386 +Node: Time-accessing (ANSI for DateAndTimes)724279 +Node: Time-accessing (non ANSI & for Durations)724811 +Node: Time-arithmetic725277 +Node: Time-comparing725868 +Node: True726169 +Node: True-basic726549 +Node: True-C hacks727515 +Node: True-printing727691 +Node: UndefinedObject727889 +Node: UndefinedObject-basic728625 +Node: UndefinedObject-class creation - alternative728924 +Node: UndefinedObject-class polymorphism731213 +Node: UndefinedObject-CObject interoperability734305 +Node: UndefinedObject-dependents access734733 +Node: UndefinedObject-printing735122 +Node: UndefinedObject-storing735616 +Node: UndefinedObject-testing736095 +Node: UnicodeCharacter736947 +Node: UnicodeCharacter class-built ins737589 +Node: UnicodeCharacter-coercion methods738166 +Node: UnicodeString738458 +Node: UnicodeString class-converting739037 +Node: UnicodeString class-multibyte encodings739415 +Node: UnicodeString-built-ins739914 +Node: UnicodeString-converting740187 +Node: UnicodeString-multibyte encodings740927 +Node: ValueAdaptor741435 +Node: ValueAdaptor class-creating instances741929 +Node: ValueAdaptor-accessing742233 +Node: ValueAdaptor-printing742656 +Node: ValueHolder742885 +Node: ValueHolder class-creating instances743512 +Node: ValueHolder-accessing743911 +Node: ValueHolder-initializing744220 +Node: VariableBinding744459 +Node: VariableBinding-printing745103 +Node: VariableBinding-saving and loading745434 +Node: VariableBinding-storing745907 +Node: VariableBinding-testing746398 +Node: VersionableObjectProxy746672 +Node: VersionableObjectProxy class-saving and restoring747573 +Node: VersionableObjectProxy-saving and restoring748613 +Node: VFS.ArchiveFile748963 +Node: VFS.ArchiveFile-ArchiveMember protocol749863 +Node: VFS.ArchiveFile-directory operations750932 +Node: VFS.ArchiveFile-querying751674 +Node: VFS.ArchiveFile-still unclassified752117 +Node: VFS.ArchiveFile-TmpFileArchiveMember protocol752470 +Node: VFS.ArchiveMember753033 +Node: VFS.ArchiveMember-accessing753817 +Node: VFS.ArchiveMember-basic755148 +Node: VFS.ArchiveMember-delegation755506 +Node: VFS.ArchiveMember-directory operations755813 +Node: VFS.ArchiveMember-file operations756418 +Node: VFS.ArchiveMember-initializing757058 +Node: VFS.ArchiveMember-still unclassified757719 +Node: VFS.ArchiveMember-testing758245 +Node: VFS.FileWrapper759373 +Node: VFS.FileWrapper class-initializing760078 +Node: VFS.FileWrapper class-instance creation760513 +Node: VFS.FileWrapper-accessing760918 +Node: VFS.FileWrapper-basic761668 +Node: VFS.FileWrapper-delegation762014 +Node: VFS.FileWrapper-enumerating763812 +Node: VFS.FileWrapper-file operations764170 +Node: VFS.FileWrapper-testing764848 +Node: VFS.StoredZipMember765572 +Node: VFS.StoredZipMember-accessing766047 +Node: VFS.StoredZipMember-opening766319 +Node: VFS.TmpFileArchiveMember766577 +Node: VFS.TmpFileArchiveMember-directory operations767039 +Node: VFS.TmpFileArchiveMember-finalization767545 +Node: VFS.TmpFileArchiveMember-still unclassified767955 +Node: VFS.ZipFile768291 +Node: VFS.ZipFile-members768635 +Node: Warning769466 +Node: Warning-exception description769794 +Node: WeakArray770014 +Node: WeakArray class-instance creation770519 +Node: WeakArray-accessing770859 +Node: WeakArray-conversion772523 +Node: WeakArray-loading773174 +Node: WeakIdentitySet773455 +Node: WeakIdentitySet-accessing773972 +Node: WeakKeyDictionary774262 +Node: WeakKeyDictionary class-hacks774866 +Node: WeakKeyDictionary-accessing775198 +Node: WeakKeyIdentityDictionary775533 +Node: WeakSet776073 +Node: WeakSet-accessing776605 +Node: WeakSet-copying776986 +Node: WeakSet-loading777380 +Node: WeakValueIdentityDictionary777648 +Node: WeakValueLookupTable778206 +Node: WeakValueLookupTable class-hacks778872 +Node: WeakValueLookupTable-hacks779186 +Node: WeakValueLookupTable-rehashing779800 +Node: WordArray780039 +Node: WriteStream780357 +Node: WriteStream class-instance creation780857 +Node: WriteStream-accessing-writing781551 +Node: WriteStream-positioning782393 +Node: ZeroDivide782619 +Node: ZeroDivide class-instance creation783124 +Node: ZeroDivide-accessing783520 +Node: ZeroDivide-description783789 +Node: Class index784020 +Node: Method index803435 +Node: Cross-reference1267830  End Tag Table diff -rNu smalltalk-3.0.3/doc/gst-base.info-1 smalltalk-3.0.4/doc/gst-base.info-1 --- smalltalk-3.0.3/doc/gst-base.info-1 2008-05-14 12:35:05.000000000 +0200 +++ smalltalk-3.0.4/doc/gst-base.info-1 2008-08-09 15:31:03.000000000 +0200 @@ -63,13 +63,14 @@ * BlockContext:: * Boolean:: * ByteArray:: -* ByteStream:: * CAggregate:: * CallinProcess:: * CArray:: * CArrayCType:: * CBoolean:: * CByte:: +* CCallable:: +* CCallbackDescriptor:: * CChar:: * CCompound:: * CDouble:: @@ -121,6 +122,7 @@ * False:: * File:: * FileDescriptor:: +* FilePath:: * FileSegment:: * FileStream:: * Float:: @@ -137,6 +139,7 @@ * IdentitySet:: * Integer:: * Interval:: +* Iterable:: * LargeArray:: * LargeArrayedCollection:: * LargeByteArray:: @@ -177,6 +180,7 @@ * Point:: * PositionableStream:: * Process:: +* ProcessEnvironment:: * ProcessorScheduler:: * Promise:: * Random:: @@ -231,6 +235,7 @@ * SystemExceptions.SecurityError:: * SystemExceptions.ShouldNotImplement:: * SystemExceptions.SubclassResponsibility:: +* SystemExceptions.UnhandledException:: * SystemExceptions.UserInterrupt:: * SystemExceptions.VerificationError:: * SystemExceptions.VMError:: @@ -247,14 +252,12 @@ * ValueHolder:: * VariableBinding:: * VersionableObjectProxy:: -* VFS.ArchiveFileHandler:: -* VFS.ArchiveMemberHandler:: -* VFS.CStatStruct:: -* VFS.DecodedFileHandler:: -* VFS.FileHandlerWrapper:: -* VFS.RealFileHandler:: -* VFS.TmpFileArchiveMemberHandler:: -* VFS.VFSHandler:: +* VFS.ArchiveFile:: +* VFS.ArchiveMember:: +* VFS.FileWrapper:: +* VFS.StoredZipMember:: +* VFS.TmpFileArchiveMember:: +* VFS.ZipFile:: * Warning:: * WeakArray:: * WeakIdentitySet:: @@ -279,15 +282,16 @@ * Boolean:: * False:: * True:: -* CFunctionDescriptor:: * CObject:: * CAggregate:: * CArray:: * CPtr:: * CString:: +* CCallable:: +* CCallbackDescriptor:: +* CFunctionDescriptor:: * CCompound:: * CStruct:: -* VFS.CStatStruct:: * CUnion:: * CScalar:: * CChar:: @@ -304,50 +308,6 @@ * CUInt:: * CULong:: * CUShort:: -* Collection:: -* Bag:: -* HashedCollection:: -* Dictionary:: -* BindingDictionary:: -* AbstractNamespace:: -* Namespace:: -* RootNamespace:: -* SystemDictionary:: -* LookupTable:: -* IdentityDictionary:: -* MethodDictionary:: -* WeakValueLookupTable:: -* WeakValueIdentityDictionary:: -* WeakKeyDictionary:: -* WeakKeyIdentityDictionary:: -* Set:: -* IdentitySet:: -* WeakSet:: -* WeakIdentitySet:: -* MappedCollection:: -* SequenceableCollection:: -* ArrayedCollection:: -* Array:: -* WeakArray:: -* ByteArray:: -* CharacterArray:: -* String:: -* Symbol:: -* UnicodeString:: -* CompiledCode:: -* CompiledBlock:: -* CompiledMethod:: -* Interval:: -* LargeArrayedCollection:: -* LargeArray:: -* LargeByteArray:: -* LargeWordArray:: -* WordArray:: -* LinkedList:: -* Semaphore:: -* OrderedCollection:: -* RunArray:: -* SortedCollection:: * ContextPart:: * BlockContext:: * MethodContext:: @@ -358,6 +318,7 @@ * CScalarCType:: * CStringCType:: * Delay:: +* Directory:: * DLD:: * DumperProxy:: * AlternativeObjectProxy:: @@ -365,10 +326,72 @@ * VersionableObjectProxy:: * PluggableProxy:: * SingletonProxy:: -* File:: -* Directory:: +* FilePath:: +* File:: +* VFS.ArchiveMember:: +* VFS.TmpFileArchiveMember:: +* VFS.StoredZipMember:: +* VFS.FileWrapper:: +* VFS.ArchiveFile:: +* VFS.ZipFile:: * FileSegment:: * Getopt:: +* Iterable:: +* Collection:: +* Bag:: +* HashedCollection:: +* Dictionary:: +* BindingDictionary:: +* AbstractNamespace:: +* Namespace:: +* RootNamespace:: +* SystemDictionary:: +* LookupTable:: +* IdentityDictionary:: +* MethodDictionary:: +* WeakValueLookupTable:: +* WeakValueIdentityDictionary:: +* WeakKeyDictionary:: +* WeakKeyIdentityDictionary:: +* Set:: +* IdentitySet:: +* WeakSet:: +* WeakIdentitySet:: +* MappedCollection:: +* SequenceableCollection:: +* ArrayedCollection:: +* Array:: +* WeakArray:: +* ByteArray:: +* CharacterArray:: +* String:: +* Symbol:: +* UnicodeString:: +* CompiledCode:: +* CompiledBlock:: +* CompiledMethod:: +* Interval:: +* LargeArrayedCollection:: +* LargeArray:: +* LargeByteArray:: +* LargeWordArray:: +* WordArray:: +* LinkedList:: +* Semaphore:: +* OrderedCollection:: +* RunArray:: +* SortedCollection:: +* Stream:: +* FileDescriptor:: +* FileStream:: +* Generator:: +* ObjectDumper:: +* PositionableStream:: +* ReadStream:: +* WriteStream:: +* ReadWriteStream:: +* Random:: +* TextCollector:: (Kernel.PackageInfo) * Package:: (Kernel.TrappableEvent) @@ -412,6 +435,7 @@ * PackageLoader:: * Permission:: * Point:: +* ProcessEnvironment:: * ProcessorScheduler:: * Rectangle:: * RecursionLock:: @@ -462,18 +486,7 @@ * SystemExceptions.EndOfStream:: * SystemExceptions.ProcessBeingTerminated:: * Warning:: -* Stream:: -* Generator:: -* ObjectDumper:: -* PositionableStream:: -* ReadStream:: -* WriteStream:: -* ReadWriteStream:: -* ByteStream:: -* FileDescriptor:: -* FileStream:: -* Random:: -* TextCollector:: +* SystemExceptions.UnhandledException:: * UndefinedObject:: * ValueAdaptor:: * NullValueHolder:: @@ -481,13 +494,6 @@ * DelayedAdaptor:: * ValueHolder:: * Promise:: -* VFS.VFSHandler:: -* VFS.ArchiveMemberHandler:: -* VFS.TmpFileArchiveMemberHandler:: -* VFS.FileHandlerWrapper:: -* VFS.ArchiveFileHandler:: -* VFS.DecodedFileHandler:: -* VFS.RealFileHandler::  File: gst-base.info, Node: AbstractNamespace, Next: AlternativeObjectProxy, Up: Base classes @@ -505,7 +511,7 @@ * AbstractNamespace class-instance creation:: (class) * AbstractNamespace-accessing:: (instance) -* AbstractNamespace-basic & copying:: (instance) +* AbstractNamespace-compiling:: (instance) * AbstractNamespace-copying:: (instance) * AbstractNamespace-namespace hierarchy:: (instance) * AbstractNamespace-overrides for superspaces:: (instance) @@ -527,7 +533,7 @@  -File: gst-base.info, Node: AbstractNamespace-accessing, Next: AbstractNamespace-basic & copying, Prev: AbstractNamespace class-instance creation, Up: AbstractNamespace +File: gst-base.info, Node: AbstractNamespace-accessing, Next: AbstractNamespace-compiling, Prev: AbstractNamespace class-instance creation, Up: AbstractNamespace 1.1.2 AbstractNamespace: accessing ---------------------------------- @@ -561,23 +567,28 @@  -File: gst-base.info, Node: AbstractNamespace-basic & copying, Next: AbstractNamespace-copying, Prev: AbstractNamespace-accessing, Up: AbstractNamespace +File: gst-base.info, Node: AbstractNamespace-compiling, Next: AbstractNamespace-copying, Prev: AbstractNamespace-accessing, Up: AbstractNamespace -1.1.3 AbstractNamespace: basic & copying ----------------------------------------- +1.1.3 AbstractNamespace: compiling +---------------------------------- -= arg - Answer whether the receiver is equal to arg. The equality test is - by default the same as that for equal objects. = must not fail; - answer false if the receiver cannot be compared to arg +addSharedPool: aDictionary + Import the given bindings for classes compiled with me as + environment. -hash - Answer an hash value for the receiver. This is the same as the - object's #identityHash. +import: aDictionary + Import the given bindings for classes compiled with me as + environment. + +removeSharedPool: aDictionary + Remove aDictionary from my list of direct pools. + +sharedPoolDictionaries + Answer the shared pools (not names) imported for my classes.  -File: gst-base.info, Node: AbstractNamespace-copying, Next: AbstractNamespace-namespace hierarchy, Prev: AbstractNamespace-basic & copying, Up: AbstractNamespace +File: gst-base.info, Node: AbstractNamespace-copying, Next: AbstractNamespace-namespace hierarchy, Prev: AbstractNamespace-compiling, Up: AbstractNamespace 1.1.4 AbstractNamespace: copying -------------------------------- @@ -610,9 +621,6 @@ allSubspacesDo: aBlock Invokes aBlock for all subspaces, both direct and indirect. -allSuperspaces - Answer all the receiver's superspaces in a collection - allSuperspacesDo: aBlock Evaluate aBlock once for each of the receiver's superspaces @@ -628,10 +636,6 @@ require aString to be interned but (unlike #includesClassNamed:) returns true even if the global is not a class object. -inheritsFrom: aNamespace - Answer whether aNamespace is one of the receiver's direct and - indirect superspaces - removeSubspace: aSymbol Remove my subspace named aSymbol from the hierarchy. @@ -670,13 +674,6 @@ Invokes aBlock for the receiver and all subclasses, both direct and indirect. -withAllSuperspaces - Answer the receiver and all of its superspaces in a collection - -withAllSuperspacesDo: aBlock - Invokes aBlock for the receiver and all superspaces, both direct - and indirect. -  File: gst-base.info, Node: AbstractNamespace-overrides for superspaces, Next: AbstractNamespace-printing, Prev: AbstractNamespace-namespace hierarchy, Up: AbstractNamespace @@ -684,24 +681,6 @@ 1.1.6 AbstractNamespace: overrides for superspaces -------------------------------------------------- -definedKeys - Answer a kind of Set containing the keys of the receiver - -definesKey: key - Answer whether the receiver defines the given key. `Defines' means - that the receiver's superspaces, if any, are not considered. - -hereAt: key - Return the value associated to the variable named as specified by - `key' *in this namespace*. If the key is not found search will - *not* be carried on in superspaces and the method will fail. - -hereAt: key ifAbsent: aBlock - Return the value associated to the variable named as specified by - `key' *in this namespace*. If the key is not found search will - *not* be carried on in superspaces and aBlock will be immediately - evaluated. - inheritedKeys Answer a Set of all the keys in the receiver and its superspaces @@ -864,12 +843,13 @@ * Menu: * Array class-instance creation:: (class) +* Array-built ins:: (instance) * Array-mutating objects:: (instance) * Array-printing:: (instance) * Array-testing:: (instance)  -File: gst-base.info, Node: Array class-instance creation, Next: Array-mutating objects, Up: Array +File: gst-base.info, Node: Array class-instance creation, Next: Array-built ins, Up: Array 1.4.1 Array class: instance creation ------------------------------------ @@ -880,9 +860,21 @@  -File: gst-base.info, Node: Array-mutating objects, Next: Array-printing, Prev: Array class-instance creation, Up: Array +File: gst-base.info, Node: Array-built ins, Next: Array-mutating objects, Prev: Array class-instance creation, Up: Array + +1.4.2 Array: built ins +---------------------- + +replaceFrom: start to: stop with: byteArray startingAt: replaceStart + Replace the characters from start to stop with new characters whose + ASCII codes are contained in byteArray, starting at the + replaceStart location of byteArray -1.4.2 Array: mutating objects + + +File: gst-base.info, Node: Array-mutating objects, Next: Array-printing, Prev: Array-built ins, Up: Array + +1.4.3 Array: mutating objects ----------------------------- multiBecome: anArray @@ -893,7 +885,7 @@  File: gst-base.info, Node: Array-printing, Next: Array-testing, Prev: Array-mutating objects, Up: Array -1.4.3 Array: printing +1.4.4 Array: printing --------------------- isLiteralObject @@ -912,7 +904,7 @@  File: gst-base.info, Node: Array-testing, Prev: Array-printing, Up: Array -1.4.4 Array: testing +1.4.5 Array: testing -------------------- isArray @@ -940,7 +932,6 @@ * ArrayedCollection-built ins:: (instance) * ArrayedCollection-copying Collections:: (instance) * ArrayedCollection-enumerating the elements of a collection:: (instance) -* ArrayedCollection-enumeration:: (instance) * ArrayedCollection-storing:: (instance) * ArrayedCollection-streams:: (instance) @@ -1072,7 +1063,7 @@  -File: gst-base.info, Node: ArrayedCollection-enumerating the elements of a collection, Next: ArrayedCollection-enumeration, Prev: ArrayedCollection-copying Collections, Up: ArrayedCollection +File: gst-base.info, Node: ArrayedCollection-enumerating the elements of a collection, Next: ArrayedCollection-storing, Prev: ArrayedCollection-copying Collections, Up: ArrayedCollection 1.5.5 ArrayedCollection: enumerating the elements of a collection ----------------------------------------------------------------- @@ -1099,22 +1090,9 @@  -File: gst-base.info, Node: ArrayedCollection-enumeration, Next: ArrayedCollection-storing, Prev: ArrayedCollection-enumerating the elements of a collection, Up: ArrayedCollection - -1.5.6 ArrayedCollection: enumeration ------------------------------------- - -gather: aBlock - Answer a new instance of a Collection containing all the results - of evaluating aBlock, joined together. aBlock should return - collections. The result is the same kind of the receiver, - independent of the type of collection returned by aBlock. - - - -File: gst-base.info, Node: ArrayedCollection-storing, Next: ArrayedCollection-streams, Prev: ArrayedCollection-enumeration, Up: ArrayedCollection +File: gst-base.info, Node: ArrayedCollection-storing, Next: ArrayedCollection-streams, Prev: ArrayedCollection-enumerating the elements of a collection, Up: ArrayedCollection -1.5.7 ArrayedCollection: storing +1.5.6 ArrayedCollection: storing -------------------------------- storeOn: aStream @@ -1124,7 +1102,7 @@  File: gst-base.info, Node: ArrayedCollection-streams, Prev: ArrayedCollection-storing, Up: ArrayedCollection -1.5.8 ArrayedCollection: streams +1.5.7 ArrayedCollection: streams -------------------------------- writeStream @@ -1500,9 +1478,13 @@ allInstances Returns a set of all instances of the receiver +allSharedPoolDictionaries + Return the shared pools defined by the class and any of its + superclasses, in the correct search order. + allSharedPools Return the names of the shared pools defined by the class and any - of its superclasses + of its superclasses, in the correct search order. classPool Answer the class pool dictionary. Since Behavior does not support @@ -1676,6 +1658,10 @@ The methods are put in the category identified by the parameter. +poolResolution + Answer a PoolResolution class to be used for resolving pool + variables while compiling methods on this class. +  File: gst-base.info, Node: Behavior-creating a class hierarchy, Next: Behavior-enumerating, Prev: Behavior-compiling methods, Up: Behavior @@ -1976,6 +1962,10 @@ 1.9.17 Behavior: still unclassified ----------------------------------- +allSharedPoolDictionariesDo: aBlock + Answer the shared pools visible from methods in the metaclass, in + the correct search order. + parseNodeAt: selector Available only when the Parser package is loaded-Answer an RBMethodNode that compiles to my method named by selector. @@ -2159,13 +2149,14 @@ * Menu: * BindingDictionary-accessing:: (instance) +* BindingDictionary-basic & copying:: (instance) * BindingDictionary-copying:: (instance) * BindingDictionary-forward declarations:: (instance) * BindingDictionary-printing:: (instance) * BindingDictionary-testing:: (instance)  -File: gst-base.info, Node: BindingDictionary-accessing, Next: BindingDictionary-copying, Up: BindingDictionary +File: gst-base.info, Node: BindingDictionary-accessing, Next: BindingDictionary-basic & copying, Up: BindingDictionary 1.10.1 BindingDictionary: accessing ----------------------------------- @@ -2211,9 +2202,25 @@  -File: gst-base.info, Node: BindingDictionary-copying, Next: BindingDictionary-forward declarations, Prev: BindingDictionary-accessing, Up: BindingDictionary +File: gst-base.info, Node: BindingDictionary-basic & copying, Next: BindingDictionary-copying, Prev: BindingDictionary-accessing, Up: BindingDictionary + +1.10.2 BindingDictionary: basic & copying +----------------------------------------- + += arg + Answer whether the receiver is equal to arg. The equality test is + by default the same as that for equal objects. = must not fail; + answer false if the receiver cannot be compared to arg + +hash + Answer an hash value for the receiver. This is the same as the + object's #identityHash. + + + +File: gst-base.info, Node: BindingDictionary-copying, Next: BindingDictionary-forward declarations, Prev: BindingDictionary-basic & copying, Up: BindingDictionary -1.10.2 BindingDictionary: copying +1.10.3 BindingDictionary: copying --------------------------------- copy @@ -2240,7 +2247,7 @@  File: gst-base.info, Node: BindingDictionary-forward declarations, Next: BindingDictionary-printing, Prev: BindingDictionary-copying, Up: BindingDictionary -1.10.3 BindingDictionary: forward declarations +1.10.4 BindingDictionary: forward declarations ---------------------------------------------- at: key put: value @@ -2252,7 +2259,7 @@  File: gst-base.info, Node: BindingDictionary-printing, Next: BindingDictionary-testing, Prev: BindingDictionary-forward declarations, Up: BindingDictionary -1.10.4 BindingDictionary: printing +1.10.5 BindingDictionary: printing ---------------------------------- printOn: aStream in: aNamespace @@ -2263,7 +2270,7 @@  File: gst-base.info, Node: BindingDictionary-testing, Prev: BindingDictionary-printing, Up: BindingDictionary -1.10.5 BindingDictionary: testing +1.10.6 BindingDictionary: testing --------------------------------- species @@ -2396,6 +2403,18 @@ 1.11.4 BlockClosure: built ins ------------------------------ +cull: arg1 + Evaluate the receiver, passing arg1 as the only parameter if the + receiver has parameters. + +cull: arg1 cull: arg2 + Evaluate the receiver, passing arg1 and arg2 as parameters if the + receiver accepts them. + +cull: arg1 cull: arg2 cull: arg3 + Evaluate the receiver, passing arg1, arg2 and arg3 as parameters if + the receiver accepts them. + value Evaluate the receiver passing no parameters @@ -2496,9 +2515,7 @@ forkWithoutPreemption Evaluate the receiver in a process that cannot be preempted. If - the receiver expect a parameter, pass the current process (can be - useful for queuing interrupts from within the uninterruptible - process). + the receiver expect a parameter, pass the current process. newProcess Create a new process executing the receiver in suspended state. @@ -2797,7 +2814,7 @@  -File: gst-base.info, Node: ByteArray, Next: ByteStream, Prev: Boolean, Up: Base classes +File: gst-base.info, Node: ByteArray, Next: CAggregate, Prev: Boolean, Up: Base classes 1.14 ByteArray ============== @@ -2812,13 +2829,14 @@ * Menu: * ByteArray class-instance creation:: (class) +* ByteArray-basic:: (instance) * ByteArray-built ins:: (instance) * ByteArray-converting:: (instance) * ByteArray-more advanced accessing:: (instance) * ByteArray-storing:: (instance)  -File: gst-base.info, Node: ByteArray class-instance creation, Next: ByteArray-built ins, Up: ByteArray +File: gst-base.info, Node: ByteArray class-instance creation, Next: ByteArray-basic, Up: ByteArray 1.14.1 ByteArray class: instance creation ----------------------------------------- @@ -2829,9 +2847,19 @@  -File: gst-base.info, Node: ByteArray-built ins, Next: ByteArray-converting, Prev: ByteArray class-instance creation, Up: ByteArray +File: gst-base.info, Node: ByteArray-basic, Next: ByteArray-built ins, Prev: ByteArray class-instance creation, Up: ByteArray + +1.14.2 ByteArray: basic +----------------------- + += aCollection + Answer whether the receiver's items match those in aCollection + + + +File: gst-base.info, Node: ByteArray-built ins, Next: ByteArray-converting, Prev: ByteArray-basic, Up: ByteArray -1.14.2 ByteArray: built ins +1.14.3 ByteArray: built ins --------------------------- asCData: aCType @@ -2847,11 +2875,6 @@ hash Answer an hash value for the receiver -primReplaceFrom: start to: stop with: aByteArray startingAt: srcIndex - Private - Replace the characters from start to stop with the ASCII - codes contained in aString (which, actually, can be any variable - byte class), starting at the srcIndex location of aString - replaceFrom: start to: stop with: aByteArray startingAt: replaceStart Replace the characters from start to stop with the bytes contained in aByteArray (which, actually, can be any variable byte class), @@ -2866,7 +2889,7 @@  File: gst-base.info, Node: ByteArray-converting, Next: ByteArray-more advanced accessing, Prev: ByteArray-built ins, Up: ByteArray -1.14.3 ByteArray: converting +1.14.4 ByteArray: converting ---------------------------- asString @@ -2882,7 +2905,7 @@  File: gst-base.info, Node: ByteArray-more advanced accessing, Next: ByteArray-storing, Prev: ByteArray-converting, Up: ByteArray -1.14.4 ByteArray: more advanced accessing +1.14.5 ByteArray: more advanced accessing ----------------------------------------- charAt: index @@ -3052,7 +3075,7 @@  File: gst-base.info, Node: ByteArray-storing, Prev: ByteArray-more advanced accessing, Up: ByteArray -1.14.5 ByteArray: storing +1.14.6 ByteArray: storing ------------------------- isLiteralObject @@ -3066,99 +3089,9 @@  -File: gst-base.info, Node: ByteStream, Next: CAggregate, Prev: ByteArray, Up: Base classes - -1.15 ByteStream -=============== - -Defined in namespace Smalltalk -Superclass: ReadWriteStream -Category: Streams-Collections - My instances are read/write streams specially crafted for - ByteArrays. They are able to write binary data to them. - -* Menu: - -* ByteStream-basic:: (instance) - - -File: gst-base.info, Node: ByteStream-basic, Up: ByteStream - -1.15.1 ByteStream: basic ------------------------- - -next - Return the next *character* in the ByteArray - -nextByte - Return the next byte in the byte array - -nextByteArray: numBytes - Return the next numBytes bytes in the byte array - -nextDouble - Return the next 64-bit float in the byte array - -nextFloat - Return the next 32-bit float in the byte array - -nextLong - Return the next 4 bytes in the byte array, interpreted as a 32 bit - signed int - -nextLongLong - Return the next 8 bytes in the byte array, interpreted as a 64 bit - signed int - -nextPut: aChar - Store aChar on the byte array - -nextPutByte: anInteger - Store anInteger (range: -128..255) on the byte array - -nextPutByteArray: aByteArray - Store aByteArray on the byte array - -nextPutDouble: aDouble - Store aDouble as a 64-bit float in the byte array - -nextPutFloat: aFloat - Return the next 32-bit float in the byte array - -nextPutInt64: anInteger - Store anInteger (range: -2^63..2^64-1) on the byte array as 4 bytes - -nextPutLong: anInteger - Store anInteger (range: -2^31..2^32-1) on the byte array as 4 bytes - -nextPutShort: anInteger - Store anInteger (range: -32768..65535) on the byte array as 2 bytes - -nextShort - Return the next 2 bytes in the byte array, interpreted as a 16 bit - signed int - -nextSignedByte - Return the next byte in the byte array, interpreted as a 8 bit - signed number - -nextUint64 - Return the next 8 bytes in the byte array, interpreted as a 64 bit - unsigned int - -nextUlong - Return the next 4 bytes in the byte array, interpreted as a 32 bit - unsigned int - -nextUshort - Return the next 2 bytes in the byte array, interpreted as a 16 bit - unsigned int - - - -File: gst-base.info, Node: CAggregate, Next: CallinProcess, Prev: ByteStream, Up: Base classes +File: gst-base.info, Node: CAggregate, Next: CallinProcess, Prev: ByteArray, Up: Base classes -1.16 CAggregate +1.15 CAggregate =============== Defined in namespace Smalltalk @@ -3173,7 +3106,7 @@  File: gst-base.info, Node: CAggregate class-accessing, Next: CAggregate-accessing, Up: CAggregate -1.16.1 CAggregate class: accessing +1.15.1 CAggregate class: accessing ---------------------------------- alignof @@ -3186,7 +3119,7 @@  File: gst-base.info, Node: CAggregate-accessing, Prev: CAggregate class-accessing, Up: CAggregate -1.16.2 CAggregate: accessing +1.15.2 CAggregate: accessing ---------------------------- elementType @@ -3196,7 +3129,7 @@  File: gst-base.info, Node: CallinProcess, Next: CArray, Prev: CAggregate, Up: Base classes -1.17 CallinProcess +1.16 CallinProcess ================== Defined in namespace Smalltalk @@ -3213,7 +3146,7 @@  File: gst-base.info, Node: CArray, Next: CArrayCType, Prev: CallinProcess, Up: Base classes -1.18 CArray +1.17 CArray =========== Defined in namespace Smalltalk @@ -3227,7 +3160,7 @@  File: gst-base.info, Node: CArray-accessing, Up: CArray -1.18.1 CArray: accessing +1.17.1 CArray: accessing ------------------------ alignof @@ -3240,7 +3173,7 @@  File: gst-base.info, Node: CArrayCType, Next: CBoolean, Prev: CArray, Up: Base classes -1.19 CArrayCType +1.18 CArrayCType ================ Defined in namespace Smalltalk @@ -3256,7 +3189,7 @@  File: gst-base.info, Node: CArrayCType class-instance creation, Next: CArrayCType-accessing, Up: CArrayCType -1.19.1 CArrayCType class: instance creation +1.18.1 CArrayCType class: instance creation ------------------------------------------- elementType: aCType @@ -3276,7 +3209,7 @@  File: gst-base.info, Node: CArrayCType-accessing, Next: CArrayCType-storing, Prev: CArrayCType class-instance creation, Up: CArrayCType -1.19.2 CArrayCType: accessing +1.18.2 CArrayCType: accessing ----------------------------- alignof @@ -3292,7 +3225,7 @@  File: gst-base.info, Node: CArrayCType-storing, Prev: CArrayCType-accessing, Up: CArrayCType -1.19.3 CArrayCType: storing +1.18.3 CArrayCType: storing --------------------------- storeOn: aStream @@ -3302,7 +3235,7 @@  File: gst-base.info, Node: CBoolean, Next: CByte, Prev: CArrayCType, Up: Base classes -1.20 CBoolean +1.19 CBoolean ============= Defined in namespace Smalltalk @@ -3317,7 +3250,7 @@  File: gst-base.info, Node: CBoolean-accessing, Up: CBoolean -1.20.1 CBoolean: accessing +1.19.1 CBoolean: accessing -------------------------- value @@ -3330,9 +3263,9 @@  -File: gst-base.info, Node: CByte, Next: CChar, Prev: CBoolean, Up: Base classes +File: gst-base.info, Node: CByte, Next: CCallable, Prev: CBoolean, Up: Base classes -1.21 CByte +1.20 CByte ========== Defined in namespace Smalltalk @@ -3348,7 +3281,7 @@  File: gst-base.info, Node: CByte class-conversion, Next: CByte-accessing, Up: CByte -1.21.1 CByte class: conversion +1.20.1 CByte class: conversion ------------------------------ cObjStoredType @@ -3362,7 +3295,7 @@  File: gst-base.info, Node: CByte-accessing, Prev: CByte class-conversion, Up: CByte -1.21.2 CByte: accessing +1.20.2 CByte: accessing ----------------------- cObjStoredType @@ -3377,9 +3310,159 @@  -File: gst-base.info, Node: CChar, Next: CCompound, Prev: CByte, Up: Base classes +File: gst-base.info, Node: CCallable, Next: CCallbackDescriptor, Prev: CByte, Up: Base classes + +1.21 CCallable +============== + +Defined in namespace Smalltalk +Superclass: CObject +Category: Language-C interface + I am not part of the Smalltalk definition. My instances contain + information about C functions that can be called from within + Smalltalk, such as number and type of parameters. This + information is used by the C callout mechanism to perform the + actual call-out to C routines. + +* Menu: + +* CCallable class-instance creation:: (class) +* CCallable-accessing:: (instance) +* CCallable-calling:: (instance) +* CCallable-restoring:: (instance) + + +File: gst-base.info, Node: CCallable class-instance creation, Next: CCallable-accessing, Up: CCallable + +1.21.1 CCallable class: instance creation +----------------------------------------- + +for: aCObject returning: returnTypeSymbol withArgs: argsArray + Answer a CFunctionDescriptor with the given address, return type + and arguments. The address will be reset to NULL upon image save + (and it's the user's task to figure out a way to reinitialize it!) + + + +File: gst-base.info, Node: CCallable-accessing, Next: CCallable-calling, Prev: CCallable class-instance creation, Up: CCallable + +1.21.2 CCallable: accessing +--------------------------- + +isValid + Answer whether the object represents a valid function. + +returnType + Not commented. + + + +File: gst-base.info, Node: CCallable-calling, Next: CCallable-restoring, Prev: CCallable-accessing, Up: CCallable + +1.21.3 CCallable: calling +------------------------- + +asyncCall + Perform the call-out for the function represented by the receiver. + The arguments (and the receiver if one of the arguments has type + #self or #selfSmalltalk) are taken from the parent context. + Asynchronous call-outs don't return a value, but if the function + calls back into Smalltalk the process that started the call-out is + not suspended. + +asyncCallNoRetryFrom: aContext + Perform the call-out for the function represented by the receiver. + The arguments (and the receiver if one of the arguments has type + #self or #selfSmalltalk) are taken from the base of the stack of + aContext. Asynchronous call-outs don't return a value, but if the + function calls back into Smalltalk the process that started the + call-out is not suspended. Unlike #asyncCallFrom:, this method + does not attempt to find functions in shared objects. + +callInto: aValueHolder + Perform the call-out for the function represented by the receiver. + The arguments (and the receiver if one of the arguments has type + #self or #selfSmalltalk) are taken from the parent context, and the + the result is stored into aValueHolder. aValueHolder is also + returned. + +callNoRetryFrom: aContext into: aValueHolder + Perform the call-out for the function represented by the receiver. + The arguments (and the receiver if one of the arguments has type + #self or #selfSmalltalk) are taken from the base of the stack of + aContext, and the result is stored into aValueHolder. aValueHolder + is also returned. Unlike #callFrom:into:, this method does not + attempt to find functions in shared objects. + + + +File: gst-base.info, Node: CCallable-restoring, Prev: CCallable-calling, Up: CCallable + +1.21.4 CCallable: restoring +--------------------------- + +link + Rebuild the object after the image is restarted. + + + +File: gst-base.info, Node: CCallbackDescriptor, Next: CChar, Prev: CCallable, Up: Base classes + +1.22 CCallbackDescriptor +======================== + +Defined in namespace Smalltalk +Superclass: CCallable +Category: Language-C interface + I am not part of the Smalltalk definition. My instances are able + to convert blocks into C functions that can be passed to C. + +* Menu: + +* CCallbackDescriptor class-instance creation:: (class) +* CCallbackDescriptor-accessing:: (instance) +* CCallbackDescriptor-restoring:: (instance) + + +File: gst-base.info, Node: CCallbackDescriptor class-instance creation, Next: CCallbackDescriptor-accessing, Up: CCallbackDescriptor + +1.22.1 CCallbackDescriptor class: instance creation +--------------------------------------------------- + +for: aBlock returning: returnTypeSymbol withArgs: argsArray + Answer a CFunctionDescriptor with the given function name, return + type and arguments. funcName must be a String. + + + +File: gst-base.info, Node: CCallbackDescriptor-accessing, Next: CCallbackDescriptor-restoring, Prev: CCallbackDescriptor class-instance creation, Up: CCallbackDescriptor + +1.22.2 CCallbackDescriptor: accessing +------------------------------------- + +block + Answer the name of the function (on the C side) represented by the + receiver + +block: aBlock + Set the name of the function (on the C side) represented by the + receiver + -1.22 CChar + +File: gst-base.info, Node: CCallbackDescriptor-restoring, Prev: CCallbackDescriptor-accessing, Up: CCallbackDescriptor + +1.22.3 CCallbackDescriptor: restoring +------------------------------------- + +link + Make the address of the function point to the registered address. + + + +File: gst-base.info, Node: CChar, Next: CCompound, Prev: CCallbackDescriptor, Up: Base classes + +1.23 CChar ========== Defined in namespace Smalltalk @@ -3395,7 +3478,7 @@  File: gst-base.info, Node: CChar class-accessing, Next: CChar-accessing, Up: CChar -1.22.1 CChar class: accessing +1.23.1 CChar class: accessing ----------------------------- alignof @@ -3412,7 +3495,7 @@  File: gst-base.info, Node: CChar-accessing, Next: CChar-conversion, Prev: CChar class-accessing, Up: CChar -1.22.2 CChar: accessing +1.23.2 CChar: accessing ----------------------- alignof @@ -3428,7 +3511,7 @@  File: gst-base.info, Node: CChar-conversion, Prev: CChar-accessing, Up: CChar -1.22.3 CChar: conversion +1.23.3 CChar: conversion ------------------------ asByteArray: size @@ -3445,7 +3528,7 @@  File: gst-base.info, Node: CCompound, Next: CDouble, Prev: CChar, Up: Base classes -1.23 CCompound +1.24 CCompound ============== Defined in namespace Smalltalk @@ -3461,9 +3544,13 @@  File: gst-base.info, Node: CCompound class-instance creation, Next: CCompound class-subclass creation, Up: CCompound -1.23.1 CCompound class: instance creation +1.24.1 CCompound class: instance creation ----------------------------------------- +gcNew + Allocate a new instance of the receiver, backed by + garbage-collected storage. + new Allocate a new instance of the receiver. To free the memory after GC, remember to call #addToBeFinalized. @@ -3472,7 +3559,7 @@  File: gst-base.info, Node: CCompound class-subclass creation, Next: CCompound-instance creation, Prev: CCompound class-instance creation, Up: CCompound -1.23.2 CCompound class: subclass creation +1.24.2 CCompound class: subclass creation ----------------------------------------- alignof @@ -3518,7 +3605,7 @@  File: gst-base.info, Node: CCompound-instance creation, Prev: CCompound class-subclass creation, Up: CCompound -1.23.3 CCompound: instance creation +1.24.3 CCompound: instance creation ----------------------------------- inspect @@ -3532,7 +3619,7 @@  File: gst-base.info, Node: CDouble, Next: CFloat, Prev: CCompound, Up: Base classes -1.24 CDouble +1.25 CDouble ============ Defined in namespace Smalltalk @@ -3547,7 +3634,7 @@  File: gst-base.info, Node: CDouble class-accessing, Next: CDouble-accessing, Up: CDouble -1.24.1 CDouble class: accessing +1.25.1 CDouble class: accessing ------------------------------- alignof @@ -3564,7 +3651,7 @@  File: gst-base.info, Node: CDouble-accessing, Prev: CDouble class-accessing, Up: CDouble -1.24.2 CDouble: accessing +1.25.2 CDouble: accessing ------------------------- alignof @@ -3580,7 +3667,7 @@  File: gst-base.info, Node: CFloat, Next: CFunctionDescriptor, Prev: CDouble, Up: Base classes -1.25 CFloat +1.26 CFloat =========== Defined in namespace Smalltalk @@ -3595,7 +3682,7 @@  File: gst-base.info, Node: CFloat class-accessing, Next: CFloat-accessing, Up: CFloat -1.25.1 CFloat class: accessing +1.26.1 CFloat class: accessing ------------------------------ alignof @@ -3612,7 +3699,7 @@  File: gst-base.info, Node: CFloat-accessing, Prev: CFloat class-accessing, Up: CFloat -1.25.2 CFloat: accessing +1.26.2 CFloat: accessing ------------------------ alignof @@ -3628,11 +3715,11 @@  File: gst-base.info, Node: CFunctionDescriptor, Next: Character, Prev: CFloat, Up: Base classes -1.26 CFunctionDescriptor +1.27 CFunctionDescriptor ======================== Defined in namespace Smalltalk -Superclass: Object +Superclass: CCallable Category: Language-C interface I am not part of the Smalltalk definition. My instances contain information about C functions that can be called from within @@ -3645,23 +3732,24 @@ * CFunctionDescriptor class-instance creation:: (class) * CFunctionDescriptor class-testing:: (class) * CFunctionDescriptor-accessing:: (instance) -* CFunctionDescriptor-calling:: (instance) * CFunctionDescriptor-printing:: (instance) +* CFunctionDescriptor-restoring:: (instance)  File: gst-base.info, Node: CFunctionDescriptor class-instance creation, Next: CFunctionDescriptor class-testing, Up: CFunctionDescriptor -1.26.1 CFunctionDescriptor class: instance creation +1.27.1 CFunctionDescriptor class: instance creation --------------------------------------------------- -for: funcNameString returning: returnTypeSymbol withArgs: argsArray - Private - Answer a CFunctionDescriptor +for: funcName returning: returnTypeSymbol withArgs: argsArray + Answer a CFunctionDescriptor with the given function name, return + type and arguments. funcName must be a String.  File: gst-base.info, Node: CFunctionDescriptor class-testing, Next: CFunctionDescriptor-accessing, Prev: CFunctionDescriptor class-instance creation, Up: CFunctionDescriptor -1.26.2 CFunctionDescriptor class: testing +1.27.2 CFunctionDescriptor class: testing ----------------------------------------- addressOf: function @@ -3674,81 +3762,44 @@  -File: gst-base.info, Node: CFunctionDescriptor-accessing, Next: CFunctionDescriptor-calling, Prev: CFunctionDescriptor class-testing, Up: CFunctionDescriptor +File: gst-base.info, Node: CFunctionDescriptor-accessing, Next: CFunctionDescriptor-printing, Prev: CFunctionDescriptor class-testing, Up: CFunctionDescriptor -1.26.3 CFunctionDescriptor: accessing +1.27.3 CFunctionDescriptor: accessing ------------------------------------- -address - Answer the address (CObject) of the function represented by the - receiver - -address: aCObject - Set to aCObject the address of the function represented by the - receiver - -isValid - Answer whether the function represented by the receiver is actually - a registered one - name Answer the name of the function (on the C side) represented by the receiver +name: aString + Set the name of the function (on the C side) represented by the + receiver - -File: gst-base.info, Node: CFunctionDescriptor-calling, Next: CFunctionDescriptor-printing, Prev: CFunctionDescriptor-accessing, Up: CFunctionDescriptor - -1.26.4 CFunctionDescriptor: calling ------------------------------------ - -asyncCall - Perform the call-out for the function represented by the receiver. - The arguments (and the receiver if one of the arguments has type - #self or #selfSmalltalk) are taken from the parent context. - Asynchronous call-outs don't return a value, but if the function - calls back into Smalltalk the process that started the call-out is - not suspended. -asyncCallNoRetryFrom: aContext - Perform the call-out for the function represented by the receiver. - The arguments (and the receiver if one of the arguments has type - #self or #selfSmalltalk) are taken from the base of the stack of - aContext. Asynchronous call-outs don't return a value, but if the - function calls back into Smalltalk the process that started the - call-out is not suspended. Unlike #asyncCallFrom:, this method - does not attempt to find functions in shared objects. + +File: gst-base.info, Node: CFunctionDescriptor-printing, Next: CFunctionDescriptor-restoring, Prev: CFunctionDescriptor-accessing, Up: CFunctionDescriptor -callInto: aValueHolder - Perform the call-out for the function represented by the receiver. - The arguments (and the receiver if one of the arguments has type - #self or #selfSmalltalk) are taken from the parent context, and the - the result is stored into aValueHolder. aValueHolder is also - returned. +1.27.4 CFunctionDescriptor: printing +------------------------------------ -callNoRetryFrom: aContext into: aValueHolder - Perform the call-out for the function represented by the receiver. - The arguments (and the receiver if one of the arguments has type - #self or #selfSmalltalk) are taken from the base of the stack of - aContext, and the result is stored into aValueHolder. aValueHolder - is also returned. Unlike #callFrom:into:, this method does not - attempt to find functions in shared objects. +printOn: aStream + Print a representation of the receiver onto aStream  -File: gst-base.info, Node: CFunctionDescriptor-printing, Prev: CFunctionDescriptor-calling, Up: CFunctionDescriptor +File: gst-base.info, Node: CFunctionDescriptor-restoring, Prev: CFunctionDescriptor-printing, Up: CFunctionDescriptor -1.26.5 CFunctionDescriptor: printing ------------------------------------- +1.27.5 CFunctionDescriptor: restoring +------------------------------------- -printOn: aStream - Print a representation of the receiver onto aStream +link + Make the address of the function point to the registered address.  File: gst-base.info, Node: Character, Next: CharacterArray, Prev: CFunctionDescriptor, Up: Base classes -1.27 Character +1.28 Character ============== Defined in namespace Smalltalk @@ -3784,7 +3835,7 @@  File: gst-base.info, Node: Character class-built ins, Next: Character class-constants, Up: Character -1.27.1 Character class: built ins +1.28.1 Character class: built ins --------------------------------- asciiValue: anInteger @@ -3804,7 +3855,7 @@  File: gst-base.info, Node: Character class-constants, Next: Character class-initializing lookup tables, Prev: Character class-built ins, Up: Character -1.27.2 Character class: constants +1.28.2 Character class: constants --------------------------------- backspace @@ -3847,7 +3898,7 @@  File: gst-base.info, Node: Character class-initializing lookup tables, Next: Character class-instance creation, Prev: Character class-constants, Up: Character -1.27.3 Character class: initializing lookup tables +1.28.3 Character class: initializing lookup tables -------------------------------------------------- initialize @@ -3862,7 +3913,7 @@  File: gst-base.info, Node: Character class-instance creation, Next: Character class-testing, Prev: Character class-initializing lookup tables, Up: Character -1.27.4 Character class: instance creation +1.28.4 Character class: instance creation ----------------------------------------- digitValue: anInteger @@ -3873,7 +3924,7 @@  File: gst-base.info, Node: Character class-testing, Next: Character-built ins, Prev: Character class-instance creation, Up: Character -1.27.5 Character class: testing +1.28.5 Character class: testing ------------------------------- isImmediate @@ -3883,7 +3934,7 @@  File: gst-base.info, Node: Character-built ins, Next: Character-coercion methods, Prev: Character class-testing, Up: Character -1.27.6 Character: built ins +1.28.6 Character: built ins --------------------------- = char @@ -3909,9 +3960,12 @@  File: gst-base.info, Node: Character-coercion methods, Next: Character-comparing, Prev: Character-built ins, Up: Character -1.27.7 Character: coercion methods +1.28.7 Character: coercion methods ---------------------------------- +* aNumber + Returns a String with aNumber occurrences of the receiver. + asLowercase Returns self as a lowercase character if it's an uppercase letter, otherwise returns the character unchanged. @@ -3934,7 +3988,7 @@  File: gst-base.info, Node: Character-comparing, Next: Character-converting, Prev: Character-coercion methods, Up: Character -1.27.8 Character: comparing +1.28.8 Character: comparing --------------------------- < aCharacter @@ -3957,7 +4011,7 @@  File: gst-base.info, Node: Character-converting, Next: Character-printing, Prev: Character-comparing, Up: Character -1.27.9 Character: converting +1.28.9 Character: converting ---------------------------- asCharacter @@ -3971,7 +4025,7 @@  File: gst-base.info, Node: Character-printing, Next: Character-storing, Prev: Character-converting, Up: Character -1.27.10 Character: printing +1.28.10 Character: printing --------------------------- displayOn: aStream @@ -3988,7 +4042,7 @@  File: gst-base.info, Node: Character-storing, Next: Character-testing, Prev: Character-printing, Up: Character -1.27.11 Character: storing +1.28.11 Character: storing -------------------------- isLiteralObject @@ -4001,7 +4055,7 @@  File: gst-base.info, Node: Character-testing, Next: Character-testing functionality, Prev: Character-storing, Up: Character -1.27.12 Character: testing +1.28.12 Character: testing -------------------------- isAlphaNumeric @@ -4040,7 +4094,7 @@  File: gst-base.info, Node: Character-testing functionality, Prev: Character-testing, Up: Character -1.27.13 Character: testing functionality +1.28.13 Character: testing functionality ---------------------------------------- isCharacter @@ -4050,7 +4104,7 @@  File: gst-base.info, Node: CharacterArray, Next: CInt, Prev: Character, Up: Base classes -1.28 CharacterArray +1.29 CharacterArray =================== Defined in namespace Smalltalk @@ -4073,7 +4127,7 @@  File: gst-base.info, Node: CharacterArray class-basic, Next: CharacterArray class-multibyte encodings, Up: CharacterArray -1.28.1 CharacterArray class: basic +1.29.1 CharacterArray class: basic ---------------------------------- fromString: aCharacterArray @@ -4088,7 +4142,7 @@  File: gst-base.info, Node: CharacterArray class-multibyte encodings, Next: CharacterArray-built ins, Prev: CharacterArray class-basic, Up: CharacterArray -1.28.2 CharacterArray class: multibyte encodings +1.29.2 CharacterArray class: multibyte encodings ------------------------------------------------ isUnicode @@ -4099,7 +4153,7 @@  File: gst-base.info, Node: CharacterArray-built ins, Next: CharacterArray-comparing, Prev: CharacterArray class-multibyte encodings, Up: CharacterArray -1.28.3 CharacterArray: built ins +1.29.3 CharacterArray: built ins -------------------------------- valueAt: index @@ -4114,7 +4168,7 @@  File: gst-base.info, Node: CharacterArray-comparing, Next: CharacterArray-converting, Prev: CharacterArray-built ins, Up: CharacterArray -1.28.4 CharacterArray: comparing +1.29.4 CharacterArray: comparing -------------------------------- < aCharacterArray @@ -4140,10 +4194,6 @@ is an initial substring of the receiver, it is considered to be less than the receiver. -endsWith: aCharacterArray - Returns true if the receiver ends with the same characters as - aCharacterArray. - indexOf: aCharacterArray matchCase: aBoolean startingAt: anIndex Answer an Interval of indices in the receiver which match the aCharacterArray pattern. # in aCharacterArray means 'match any @@ -4168,15 +4218,11 @@ Returns true if the receiver is the same CharacterArray as aCharacterArray, ignoring case differences. -startsWith: aCharacterArray - Returns true if the receiver starts with the same characters as - aCharacterArray. -  File: gst-base.info, Node: CharacterArray-converting, Next: CharacterArray-multibyte encodings, Prev: CharacterArray-comparing, Up: CharacterArray -1.28.5 CharacterArray: converting +1.29.5 CharacterArray: converting --------------------------------- asByteArray @@ -4232,7 +4278,7 @@  File: gst-base.info, Node: CharacterArray-multibyte encodings, Next: CharacterArray-string processing, Prev: CharacterArray-converting, Up: CharacterArray -1.28.6 CharacterArray: multibyte encodings +1.29.6 CharacterArray: multibyte encodings ------------------------------------------ encoding @@ -4250,7 +4296,7 @@  File: gst-base.info, Node: CharacterArray-string processing, Next: CharacterArray-testing functionality, Prev: CharacterArray-multibyte encodings, Up: CharacterArray -1.28.7 CharacterArray: string processing +1.29.7 CharacterArray: string processing ---------------------------------------- % anArray @@ -4326,7 +4372,7 @@  File: gst-base.info, Node: CharacterArray-testing functionality, Prev: CharacterArray-string processing, Up: CharacterArray -1.28.8 CharacterArray: testing functionality +1.29.8 CharacterArray: testing functionality -------------------------------------------- isCharacterArray @@ -4336,7 +4382,7 @@  File: gst-base.info, Node: CInt, Next: Class, Prev: CharacterArray, Up: Base classes -1.29 CInt +1.30 CInt ========= Defined in namespace Smalltalk @@ -4351,7 +4397,7 @@  File: gst-base.info, Node: CInt class-accessing, Next: CInt-accessing, Up: CInt -1.29.1 CInt class: accessing +1.30.1 CInt class: accessing ---------------------------- alignof @@ -4368,7 +4414,7 @@  File: gst-base.info, Node: CInt-accessing, Prev: CInt class-accessing, Up: CInt -1.29.2 CInt: accessing +1.30.2 CInt: accessing ---------------------- alignof @@ -4384,7 +4430,7 @@  File: gst-base.info, Node: Class, Next: ClassDescription, Prev: CInt, Up: Base classes -1.30 Class +1.31 Class ========== Defined in namespace Smalltalk @@ -4407,13 +4453,14 @@ * Class-printing:: (instance) * Class-saving and loading:: (instance) * Class-security:: (instance) +* Class-still unclassified:: (instance) * Class-testing:: (instance) * Class-testing functionality:: (instance)  File: gst-base.info, Node: Class class-initialize, Next: Class-accessing instances and variables, Up: Class -1.30.1 Class class: initialize +1.31.1 Class class: initialize ------------------------------ initialize @@ -4423,7 +4470,7 @@  File: gst-base.info, Node: Class-accessing instances and variables, Next: Class-filing, Prev: Class class-initialize, Up: Class -1.30.2 Class: accessing instances and variables +1.31.2 Class: accessing instances and variables ----------------------------------------------- addClassVarName: aString @@ -4501,7 +4548,7 @@  File: gst-base.info, Node: Class-filing, Next: Class-instance creation, Prev: Class-accessing instances and variables, Up: Class -1.30.3 Class: filing +1.31.3 Class: filing -------------------- fileOutDeclarationOn: aFileStream @@ -4515,7 +4562,7 @@  File: gst-base.info, Node: Class-instance creation, Next: Class-instance creation - alternative, Prev: Class-filing, Up: Class -1.30.4 Class: instance creation +1.31.4 Class: instance creation ------------------------------- extend @@ -4567,7 +4614,7 @@  File: gst-base.info, Node: Class-instance creation - alternative, Next: Class-pragmas, Prev: Class-instance creation, Up: Class -1.30.5 Class: instance creation - alternative +1.31.5 Class: instance creation - alternative --------------------------------------------- categoriesFor: method are: categories @@ -4601,7 +4648,7 @@  File: gst-base.info, Node: Class-pragmas, Next: Class-printing, Prev: Class-instance creation - alternative, Up: Class -1.30.6 Class: pragmas +1.31.6 Class: pragmas --------------------- pragmaHandlerFor: aSymbol @@ -4617,7 +4664,7 @@  File: gst-base.info, Node: Class-printing, Next: Class-saving and loading, Prev: Class-pragmas, Up: Class -1.30.7 Class: printing +1.31.7 Class: printing ---------------------- article @@ -4633,7 +4680,7 @@  File: gst-base.info, Node: Class-saving and loading, Next: Class-security, Prev: Class-printing, Up: Class -1.30.8 Class: saving and loading +1.31.8 Class: saving and loading -------------------------------- binaryRepresentationVersion @@ -4660,9 +4707,9 @@  -File: gst-base.info, Node: Class-security, Next: Class-testing, Prev: Class-saving and loading, Up: Class +File: gst-base.info, Node: Class-security, Next: Class-still unclassified, Prev: Class-saving and loading, Up: Class -1.30.9 Class: security +1.31.9 Class: security ---------------------- check: aPermission @@ -4676,9 +4723,20 @@  -File: gst-base.info, Node: Class-testing, Next: Class-testing functionality, Prev: Class-security, Up: Class +File: gst-base.info, Node: Class-still unclassified, Next: Class-testing, Prev: Class-security, Up: Class + +1.31.10 Class: still unclassified +--------------------------------- + +allSharedPoolDictionariesDo: aBlock + Answer the shared pools visible from methods in the metaclass, in + the correct search order. + + + +File: gst-base.info, Node: Class-testing, Next: Class-testing functionality, Prev: Class-still unclassified, Up: Class -1.30.10 Class: testing +1.31.11 Class: testing ---------------------- = aClass @@ -4688,7 +4746,7 @@  File: gst-base.info, Node: Class-testing functionality, Prev: Class-testing, Up: Class -1.30.11 Class: testing functionality +1.31.12 Class: testing functionality ------------------------------------ asClass @@ -4701,7 +4759,7 @@  File: gst-base.info, Node: ClassDescription, Next: CLong, Prev: Class, Up: Base classes -1.31 ClassDescription +1.32 ClassDescription ===================== Defined in namespace Smalltalk @@ -4725,7 +4783,7 @@  File: gst-base.info, Node: ClassDescription-compiling, Next: ClassDescription-conversion, Up: ClassDescription -1.31.1 ClassDescription: compiling +1.32.1 ClassDescription: compiling ---------------------------------- compile: code classified: categoryName @@ -4747,7 +4805,7 @@  File: gst-base.info, Node: ClassDescription-conversion, Next: ClassDescription-copying, Prev: ClassDescription-compiling, Up: ClassDescription -1.31.2 ClassDescription: conversion +1.32.2 ClassDescription: conversion ----------------------------------- asClass @@ -4764,7 +4822,7 @@  File: gst-base.info, Node: ClassDescription-copying, Next: ClassDescription-filing, Prev: ClassDescription-conversion, Up: ClassDescription -1.31.3 ClassDescription: copying +1.32.3 ClassDescription: copying -------------------------------- copy: selector from: aClass @@ -4798,7 +4856,7 @@  File: gst-base.info, Node: ClassDescription-filing, Next: ClassDescription-organization of messages and classes, Prev: ClassDescription-copying, Up: ClassDescription -1.31.4 ClassDescription: filing +1.32.4 ClassDescription: filing ------------------------------- fileOut: fileName @@ -4820,7 +4878,7 @@  File: gst-base.info, Node: ClassDescription-organization of messages and classes, Next: ClassDescription-parsing class declarations, Prev: ClassDescription-filing, Up: ClassDescription -1.31.5 ClassDescription: organization of messages and classes +1.32.5 ClassDescription: organization of messages and classes ------------------------------------------------------------- classify: aSelector under: aString @@ -4857,7 +4915,7 @@  File: gst-base.info, Node: ClassDescription-parsing class declarations, Next: ClassDescription-printing, Prev: ClassDescription-organization of messages and classes, Up: ClassDescription -1.31.6 ClassDescription: parsing class declarations +1.32.6 ClassDescription: parsing class declarations --------------------------------------------------- addSharedPool: aDictionary @@ -4872,7 +4930,7 @@  File: gst-base.info, Node: ClassDescription-printing, Next: ClassDescription-still unclassified, Prev: ClassDescription-parsing class declarations, Up: ClassDescription -1.31.7 ClassDescription: printing +1.32.7 ClassDescription: printing --------------------------------- classVariableString @@ -4898,7 +4956,7 @@  File: gst-base.info, Node: ClassDescription-still unclassified, Prev: ClassDescription-printing, Up: ClassDescription -1.31.8 ClassDescription: still unclassified +1.32.8 ClassDescription: still unclassified ------------------------------------------- fileOutCategory: category toStream: aFileStream @@ -4913,7 +4971,7 @@  File: gst-base.info, Node: CLong, Next: CLongDouble, Prev: ClassDescription, Up: Base classes -1.32 CLong +1.33 CLong ========== Defined in namespace Smalltalk @@ -4928,7 +4986,7 @@  File: gst-base.info, Node: CLong class-accessing, Next: CLong-accessing, Up: CLong -1.32.1 CLong class: accessing +1.33.1 CLong class: accessing ----------------------------- alignof @@ -4945,7 +5003,7 @@  File: gst-base.info, Node: CLong-accessing, Prev: CLong class-accessing, Up: CLong -1.32.2 CLong: accessing +1.33.2 CLong: accessing ----------------------- alignof @@ -4961,7 +5019,7 @@  File: gst-base.info, Node: CLongDouble, Next: CObject, Prev: CLong, Up: Base classes -1.33 CLongDouble +1.34 CLongDouble ================ Defined in namespace Smalltalk @@ -4976,7 +5034,7 @@  File: gst-base.info, Node: CLongDouble class-accessing, Next: CLongDouble-accessing, Up: CLongDouble -1.33.1 CLongDouble class: accessing +1.34.1 CLongDouble class: accessing ----------------------------------- alignof @@ -4993,7 +5051,7 @@  File: gst-base.info, Node: CLongDouble-accessing, Prev: CLongDouble class-accessing, Up: CLongDouble -1.33.2 CLongDouble: accessing +1.34.2 CLongDouble: accessing ----------------------------- alignof @@ -5009,7 +5067,7 @@  File: gst-base.info, Node: CObject, Next: Collection, Prev: CLongDouble, Up: Base classes -1.34 CObject +1.35 CObject ============ Defined in namespace Smalltalk @@ -5026,17 +5084,20 @@ * CObject class-conversion:: (class) * CObject class-instance creation:: (class) +* CObject class-primitive allocation:: (class) * CObject class-subclassing:: (class) * CObject-accessing:: (instance) +* CObject-basic:: (instance) * CObject-C data access:: (instance) * CObject-conversion:: (instance) * CObject-finalization:: (instance) * CObject-pointer-like behavior:: (instance) +* CObject-testing functionality:: (instance)  File: gst-base.info, Node: CObject class-conversion, Next: CObject class-instance creation, Up: CObject -1.34.1 CObject class: conversion +1.35.1 CObject class: conversion -------------------------------- type @@ -5045,9 +5106,9 @@  -File: gst-base.info, Node: CObject class-instance creation, Next: CObject class-subclassing, Prev: CObject class-conversion, Up: CObject +File: gst-base.info, Node: CObject class-instance creation, Next: CObject class-primitive allocation, Prev: CObject class-conversion, Up: CObject -1.34.2 CObject class: instance creation +1.35.2 CObject class: instance creation --------------------------------------- address: anInteger @@ -5056,8 +5117,11 @@ alloc: nBytes Allocate nBytes bytes and return an instance of the receiver -alloc: nBytes type: cTypeObject - Allocate nBytes bytes and return a CObject of the given type +gcAlloc: nBytes + Allocate nBytes bytes and return an instance of the receiver + +gcNew: nBytes + Allocate nBytes bytes and return an instance of the receiver new Answer a new object pointing to NULL. @@ -5067,9 +5131,22 @@  -File: gst-base.info, Node: CObject class-subclassing, Next: CObject-accessing, Prev: CObject class-instance creation, Up: CObject +File: gst-base.info, Node: CObject class-primitive allocation, Next: CObject class-subclassing, Prev: CObject class-instance creation, Up: CObject + +1.35.3 CObject class: primitive allocation +------------------------------------------ -1.34.3 CObject class: subclassing +alloc: nBytes type: cTypeObject + Allocate nBytes bytes and return a CObject of the given type + +gcAlloc: nBytes type: cTypeObject + Allocate nBytes bytes and return a CObject of the given type + + + +File: gst-base.info, Node: CObject class-subclassing, Next: CObject-accessing, Prev: CObject class-primitive allocation, Up: CObject + +1.35.4 CObject class: subclassing --------------------------------- subclass: aSymbol @@ -5077,28 +5154,55 @@  -File: gst-base.info, Node: CObject-accessing, Next: CObject-C data access, Prev: CObject class-subclassing, Up: CObject +File: gst-base.info, Node: CObject-accessing, Next: CObject-basic, Prev: CObject class-subclassing, Up: CObject -1.34.4 CObject: accessing +1.35.5 CObject: accessing ------------------------- address - Answer the address the receiver is pointing to. + Answer the address the receiver is pointing to. The address can + be absolute if the storage is nil, or relative to the Smalltalk + object in #storage. In this case, an address of 0 corresponds to + the first instance variable. address: anInteger Set the receiver to point to the passed address, anInteger +isAbsolute + Answer whether the object points into a garbage-collected Smalltalk + storage, or it is an absolute address. + printOn: aStream Print a representation of the receiver +storage + Answer the storage that the receiver is pointing into, or nil if + the address is absolute. + +storage: anObject + Change the receiver to point to the storage of anObject. + type: aCType Set the receiver's type to aCType.  -File: gst-base.info, Node: CObject-C data access, Next: CObject-conversion, Prev: CObject-accessing, Up: CObject +File: gst-base.info, Node: CObject-basic, Next: CObject-C data access, Prev: CObject-accessing, Up: CObject -1.34.5 CObject: C data access +1.35.6 CObject: basic +--------------------- + += anObject + Return true if the receiver and aCObject are equal. + +hash + Return a hash value for anObject. + + + +File: gst-base.info, Node: CObject-C data access, Next: CObject-conversion, Prev: CObject-basic, Up: CObject + +1.35.7 CObject: C data access ----------------------------- at: byteOffset put: aValue type: aType @@ -5117,7 +5221,7 @@  File: gst-base.info, Node: CObject-conversion, Next: CObject-finalization, Prev: CObject-C data access, Up: CObject -1.34.6 CObject: conversion +1.35.8 CObject: conversion -------------------------- castTo: aType @@ -5138,7 +5242,7 @@  File: gst-base.info, Node: CObject-finalization, Next: CObject-pointer-like behavior, Prev: CObject-conversion, Up: CObject -1.34.7 CObject: finalization +1.35.9 CObject: finalization ---------------------------- finalize @@ -5150,10 +5254,10 @@  -File: gst-base.info, Node: CObject-pointer-like behavior, Prev: CObject-finalization, Up: CObject +File: gst-base.info, Node: CObject-pointer-like behavior, Next: CObject-testing functionality, Prev: CObject-finalization, Up: CObject -1.34.8 CObject: pointer-like behavior -------------------------------------- +1.35.10 CObject: pointer-like behavior +-------------------------------------- + anInteger Return another instance of the receiver's class which points at @@ -5211,13 +5315,23 @@  +File: gst-base.info, Node: CObject-testing functionality, Prev: CObject-pointer-like behavior, Up: CObject + +1.35.11 CObject: testing functionality +-------------------------------------- + +isCObject + Answer `true'. + + + File: gst-base.info, Node: Collection, Next: CompiledBlock, Prev: CObject, Up: Base classes -1.35 Collection +1.36 Collection =============== Defined in namespace Smalltalk -Superclass: Object +Superclass: Iterable Category: Collections I am an abstract class. My instances are collections of objects. My subclasses may place some restrictions or add some definitions @@ -5230,6 +5344,7 @@ * Collection class-instance creation:: (class) * Collection class-multibyte encodings:: (class) * Collection-adding:: (instance) +* Collection-concatenating:: (instance) * Collection-converting:: (instance) * Collection-copying Collections:: (instance) * Collection-enumeration:: (instance) @@ -5242,7 +5357,7 @@  File: gst-base.info, Node: Collection class-instance creation, Next: Collection class-multibyte encodings, Up: Collection -1.35.1 Collection class: instance creation +1.36.1 Collection class: instance creation ------------------------------------------ from: anArray @@ -5281,7 +5396,7 @@  File: gst-base.info, Node: Collection class-multibyte encodings, Next: Collection-adding, Prev: Collection class-instance creation, Up: Collection -1.35.2 Collection class: multibyte encodings +1.36.2 Collection class: multibyte encodings -------------------------------------------- isUnicode @@ -5290,9 +5405,9 @@  -File: gst-base.info, Node: Collection-adding, Next: Collection-converting, Prev: Collection class-multibyte encodings, Up: Collection +File: gst-base.info, Node: Collection-adding, Next: Collection-concatenating, Prev: Collection class-multibyte encodings, Up: Collection -1.35.3 Collection: adding +1.36.3 Collection: adding ------------------------- add: newObject @@ -5304,9 +5419,27 @@  -File: gst-base.info, Node: Collection-converting, Next: Collection-copying Collections, Prev: Collection-adding, Up: Collection +File: gst-base.info, Node: Collection-concatenating, Next: Collection-converting, Prev: Collection-adding, Up: Collection + +1.36.4 Collection: concatenating +-------------------------------- + +join + Answer a new collection like my first element, with all the + elements (in order) of all my elements, which should be + collections. + + I use my first element instead of myself as a prototype because my + elements are more likely to share the desired properties than I + am, such as in: + + #('hello, ' 'world') join => 'hello, world' + + + +File: gst-base.info, Node: Collection-converting, Next: Collection-copying Collections, Prev: Collection-concatenating, Up: Collection -1.35.4 Collection: converting +1.36.5 Collection: converting ----------------------------- asArray @@ -5351,7 +5484,7 @@  File: gst-base.info, Node: Collection-copying Collections, Next: Collection-enumeration, Prev: Collection-converting, Up: Collection -1.35.5 Collection: copying Collections +1.36.6 Collection: copying Collections -------------------------------------- copyReplacing: targetObject withObject: newObject @@ -5369,20 +5502,12 @@  File: gst-base.info, Node: Collection-enumeration, Next: Collection-finalization, Prev: Collection-copying Collections, Up: Collection -1.35.6 Collection: enumeration +1.36.7 Collection: enumeration ------------------------------ -allSatisfy: aBlock - Search the receiver for an element for which aBlock returns false. - Answer true if none does, false otherwise. - anyOne Answer an unspecified element of the collection. -anySatisfy: aBlock - Search the receiver for an element for which aBlock returns true. - Answer true if some does, false otherwise. - beConsistent This method is private, but it is quite interesting so it is documented. It ensures that a collection is in a consistent state @@ -5398,56 +5523,11 @@ Answer a new instance of a Collection containing all the results of evaluating aBlock passing each of the receiver's elements -conform: aBlock - Search the receiver for an element for which aBlock returns false. - Answer true if none does, false otherwise. - -contains: aBlock - Search the receiver for an element for which aBlock returns true. - Answer true if some does, false otherwise. - -count: aBlock - Count the elements of the receiver for which aBlock returns true, - and return their number. - -detect: aBlock - Search the receiver for an element for which aBlock returns true. - If some does, answer it. If none does, fail - -detect: aBlock ifNone: exceptionBlock - Search the receiver for an element for which aBlock returns true. - If some does, answer it. If none does, answer the result of - evaluating aBlock - -do: aBlock - Enumerate each object of the receiver, passing them to aBlock - -do: aBlock separatedBy: separatorBlock - Enumerate each object of the receiver, passing them to aBlock. - Between every two invocations of aBlock, invoke separatorBlock - -fold: binaryBlock - First, pass to binaryBlock the first and second elements of the - receiver; for each subsequent element, pass the result of the - previous evaluation and an element. Answer the result of the last - invocation, or the first element if the collection has size 1. - Fail if the collection is empty. - gather: aBlock Answer a new instance of a Collection containing all the results of evaluating aBlock, joined together. aBlock should return - collections. The result is the same kind of the receiver, - independent of the type of collection returned by aBlock. - -inject: thisValue into: binaryBlock - First, pass to binaryBlock thisValue and the first element of the - receiver; for each subsequent element, pass the result of the - previous evaluation and an element. Answer the result of the last - invocation. - -noneSatisfy: aBlock - Search the receiver for an element for which aBlock returns true. - Answer true if none does, false otherwise. + collections. The result is the same kind as the first collection, + returned by aBlock (as for #join). readStream Answer a stream that gives elements of the receiver @@ -5464,7 +5544,7 @@  File: gst-base.info, Node: Collection-finalization, Next: Collection-printing, Prev: Collection-enumeration, Up: Collection -1.35.7 Collection: finalization +1.36.8 Collection: finalization ------------------------------- mourn: anObject @@ -5475,7 +5555,7 @@  File: gst-base.info, Node: Collection-printing, Next: Collection-removing, Prev: Collection-finalization, Up: Collection -1.35.8 Collection: printing +1.36.9 Collection: printing --------------------------- inspect @@ -5489,8 +5569,8 @@  File: gst-base.info, Node: Collection-removing, Next: Collection-storing, Prev: Collection-printing, Up: Collection -1.35.9 Collection: removing ---------------------------- +1.36.10 Collection: removing +---------------------------- empty Remove everything from the receiver. @@ -5519,7 +5599,7 @@  File: gst-base.info, Node: Collection-storing, Next: Collection-testing collections, Prev: Collection-removing, Up: Collection -1.35.10 Collection: storing +1.36.11 Collection: storing --------------------------- storeOn: aStream @@ -5529,7 +5609,7 @@  File: gst-base.info, Node: Collection-testing collections, Prev: Collection-storing, Up: Collection -1.35.11 Collection: testing collections +1.36.12 Collection: testing collections --------------------------------------- capacity @@ -5562,7 +5642,7 @@  File: gst-base.info, Node: CompiledBlock, Next: CompiledCode, Prev: Collection, Up: Base classes -1.36 CompiledBlock +1.37 CompiledBlock ================== Defined in namespace Smalltalk @@ -5581,7 +5661,7 @@  File: gst-base.info, Node: CompiledBlock class-instance creation, Next: CompiledBlock-accessing, Up: CompiledBlock -1.36.1 CompiledBlock class: instance creation +1.37.1 CompiledBlock class: instance creation --------------------------------------------- new: numBytecodes header: anInteger method: outerMethod @@ -5599,7 +5679,7 @@  File: gst-base.info, Node: CompiledBlock-accessing, Next: CompiledBlock-basic, Prev: CompiledBlock class-instance creation, Up: CompiledBlock -1.36.2 CompiledBlock: accessing +1.37.2 CompiledBlock: accessing ------------------------------- flags @@ -5631,6 +5711,14 @@ selector: aSymbol Set the selector through which the method is called +sourceCodeLinesDelta + Answer the delta from the numbers in LINE_NUMBER bytecodes to + source code line numbers. + +sourceCodeMap + Answer an array which maps bytecode indices to source code line + numbers. 0 values represent invalid instruction pointer indices. + stackDepth Answer the number of stack slots needed for the receiver @@ -5638,7 +5726,7 @@  File: gst-base.info, Node: CompiledBlock-basic, Next: CompiledBlock-printing, Prev: CompiledBlock-accessing, Up: CompiledBlock -1.36.3 CompiledBlock: basic +1.37.3 CompiledBlock: basic --------------------------- = aMethod @@ -5667,7 +5755,7 @@  File: gst-base.info, Node: CompiledBlock-printing, Next: CompiledBlock-saving and loading, Prev: CompiledBlock-basic, Up: CompiledBlock -1.36.4 CompiledBlock: printing +1.37.4 CompiledBlock: printing ------------------------------ printOn: aStream @@ -5677,7 +5765,7 @@  File: gst-base.info, Node: CompiledBlock-saving and loading, Prev: CompiledBlock-printing, Up: CompiledBlock -1.36.5 CompiledBlock: saving and loading +1.37.5 CompiledBlock: saving and loading ---------------------------------------- to @@ -5691,7 +5779,7 @@  File: gst-base.info, Node: CompiledCode, Next: CompiledMethod, Prev: CompiledBlock, Up: Base classes -1.37 CompiledCode +1.38 CompiledCode ================= Defined in namespace Smalltalk @@ -5718,7 +5806,7 @@  File: gst-base.info, Node: CompiledCode class-cache flushing, Next: CompiledCode class-instance creation, Up: CompiledCode -1.37.1 CompiledCode class: cache flushing +1.38.1 CompiledCode class: cache flushing ----------------------------------------- flushTranslatorCache @@ -5729,7 +5817,7 @@  File: gst-base.info, Node: CompiledCode class-instance creation, Next: CompiledCode class-tables, Prev: CompiledCode class-cache flushing, Up: CompiledCode -1.37.2 CompiledCode class: instance creation +1.38.2 CompiledCode class: instance creation -------------------------------------------- new: numBytecodes header: anInteger literals: literals @@ -5744,7 +5832,7 @@  File: gst-base.info, Node: CompiledCode class-tables, Next: CompiledCode-accessing, Prev: CompiledCode class-instance creation, Up: CompiledCode -1.37.3 CompiledCode class: tables +1.38.3 CompiledCode class: tables --------------------------------- bytecodeInfoTable @@ -5775,7 +5863,7 @@  File: gst-base.info, Node: CompiledCode-accessing, Next: CompiledCode-basic, Prev: CompiledCode class-tables, Up: CompiledCode -1.37.4 CompiledCode: accessing +1.38.4 CompiledCode: accessing ------------------------------ at: anIndex put: aBytecode @@ -5831,6 +5919,10 @@ selector: aSymbol Set the selector through which the method is called +sourceCodeLinesDelta + Answer the delta from the numbers in LINE_NUMBER bytecodes to + source code line numbers. + stackDepth Answer the number of stack slots needed for the receiver @@ -5838,7 +5930,7 @@  File: gst-base.info, Node: CompiledCode-basic, Next: CompiledCode-copying, Prev: CompiledCode-accessing, Up: CompiledCode -1.37.5 CompiledCode: basic +1.38.5 CompiledCode: basic -------------------------- = aMethod @@ -5870,7 +5962,7 @@  File: gst-base.info, Node: CompiledCode-copying, Next: CompiledCode-debugging, Prev: CompiledCode-basic, Up: CompiledCode -1.37.6 CompiledCode: copying +1.38.6 CompiledCode: copying ---------------------------- deepCopy @@ -5880,7 +5972,7 @@  File: gst-base.info, Node: CompiledCode-debugging, Next: CompiledCode-decoding bytecodes, Prev: CompiledCode-copying, Up: CompiledCode -1.37.7 CompiledCode: debugging +1.38.7 CompiledCode: debugging ------------------------------ inspect @@ -5890,7 +5982,7 @@  File: gst-base.info, Node: CompiledCode-decoding bytecodes, Next: CompiledCode-literals - iteration, Prev: CompiledCode-debugging, Up: CompiledCode -1.37.8 CompiledCode: decoding bytecodes +1.38.8 CompiledCode: decoding bytecodes --------------------------------------- dispatchTo: anObject with: param @@ -5902,7 +5994,7 @@  File: gst-base.info, Node: CompiledCode-literals - iteration, Next: CompiledCode-security, Prev: CompiledCode-decoding bytecodes, Up: CompiledCode -1.37.9 CompiledCode: literals - iteration +1.38.9 CompiledCode: literals - iteration ----------------------------------------- allLiteralSymbolsDo: aBlock @@ -5919,7 +6011,7 @@  File: gst-base.info, Node: CompiledCode-security, Next: CompiledCode-testing accesses, Prev: CompiledCode-literals - iteration, Up: CompiledCode -1.37.10 CompiledCode: security +1.38.10 CompiledCode: security ------------------------------ verify @@ -5930,7 +6022,7 @@  File: gst-base.info, Node: CompiledCode-testing accesses, Next: CompiledCode-translation, Prev: CompiledCode-security, Up: CompiledCode -1.37.11 CompiledCode: testing accesses +1.38.11 CompiledCode: testing accesses -------------------------------------- accesses: instVarIndex @@ -5949,7 +6041,7 @@ Answer whether the receiver includes the `byte' bytecode in any of the indices between firstIndex and lastIndex. -jumpDestinationAt: anIndex +jumpDestinationAt: anIndex forward: aBoolean Answer where the jump at bytecode index `anIndex' lands reads: instVarIndex @@ -5967,7 +6059,7 @@  File: gst-base.info, Node: CompiledCode-translation, Prev: CompiledCode-testing accesses, Up: CompiledCode -1.37.12 CompiledCode: translation +1.38.12 CompiledCode: translation --------------------------------- discardTranslation @@ -5977,7 +6069,7 @@  File: gst-base.info, Node: CompiledMethod, Next: ContextPart, Prev: CompiledCode, Up: Base classes -1.38 CompiledMethod +1.39 CompiledMethod =================== Defined in namespace Smalltalk @@ -5990,6 +6082,7 @@ * Menu: +* CompiledMethod class-c call-outs:: (class) * CompiledMethod class-instance creation:: (class) * CompiledMethod class-lean images:: (class) * CompiledMethod-accessing:: (instance) @@ -6004,9 +6097,28 @@ * CompiledMethod-testing:: (instance)  -File: gst-base.info, Node: CompiledMethod class-instance creation, Next: CompiledMethod class-lean images, Up: CompiledMethod +File: gst-base.info, Node: CompiledMethod class-c call-outs, Next: CompiledMethod class-instance creation, Up: CompiledMethod + +1.39.1 CompiledMethod class: c call-outs +---------------------------------------- + + pragma + +asyncCCall: descr numArgs: numArgs attributes: attributesArray + Return a CompiledMethod corresponding to a #asyncCCall:args: + pragma with the given arguments. + + pragma + +cCall: descr numArgs: numArgs attributes: attributesArray + Return a CompiledMethod corresponding to a #cCall:returning:args: + pragma with the given arguments. + + + +File: gst-base.info, Node: CompiledMethod class-instance creation, Next: CompiledMethod class-lean images, Prev: CompiledMethod class-c call-outs, Up: CompiledMethod -1.38.1 CompiledMethod class: instance creation +1.39.2 CompiledMethod class: instance creation ---------------------------------------------- literals: lits numArgs: numArg numTemps: numTemp attributes: attrArray bytecodes: bytecodes depth: depth @@ -6026,7 +6138,7 @@  File: gst-base.info, Node: CompiledMethod class-lean images, Next: CompiledMethod-accessing, Prev: CompiledMethod class-instance creation, Up: CompiledMethod -1.38.2 CompiledMethod class: lean images +1.39.3 CompiledMethod class: lean images ---------------------------------------- stripSourceCode @@ -6036,7 +6148,7 @@  File: gst-base.info, Node: CompiledMethod-accessing, Next: CompiledMethod-attributes, Prev: CompiledMethod class-lean images, Up: CompiledMethod -1.38.3 CompiledMethod: accessing +1.39.4 CompiledMethod: accessing -------------------------------- allBlocksDo: aBlock @@ -6084,6 +6196,10 @@ selector: aSymbol Set the selector through which the method is called +sourceCodeLinesDelta + Answer the delta from the numbers in LINE_NUMBER bytecodes to + source code line numbers. + stackDepth Answer the number of stack slots needed for the receiver @@ -6103,7 +6219,7 @@  File: gst-base.info, Node: CompiledMethod-attributes, Next: CompiledMethod-basic, Prev: CompiledMethod-accessing, Up: CompiledMethod -1.38.4 CompiledMethod: attributes +1.39.5 CompiledMethod: attributes --------------------------------- attributeAt: aSymbol @@ -6133,7 +6249,7 @@  File: gst-base.info, Node: CompiledMethod-basic, Next: CompiledMethod-c call-outs, Prev: CompiledMethod-attributes, Up: CompiledMethod -1.38.5 CompiledMethod: basic +1.39.6 CompiledMethod: basic ---------------------------- = aMethod @@ -6146,7 +6262,7 @@  File: gst-base.info, Node: CompiledMethod-c call-outs, Next: CompiledMethod-compiling, Prev: CompiledMethod-basic, Up: CompiledMethod -1.38.6 CompiledMethod: c call-outs +1.39.7 CompiledMethod: c call-outs ---------------------------------- isValidCCall @@ -6156,7 +6272,7 @@ rewriteAsAsyncCCall: func args: argsArray Not commented. -rewriteAsCCall: func for: aClass +rewriteAsCCall: funcOrDescr for: aClass Not commented. rewriteAsCCall: func returning: returnType args: argsArray @@ -6166,7 +6282,7 @@  File: gst-base.info, Node: CompiledMethod-compiling, Next: CompiledMethod-invoking, Prev: CompiledMethod-c call-outs, Up: CompiledMethod -1.38.7 CompiledMethod: compiling +1.39.8 CompiledMethod: compiling -------------------------------- methodFormattedSourceString @@ -6192,7 +6308,7 @@  File: gst-base.info, Node: CompiledMethod-invoking, Next: CompiledMethod-printing, Prev: CompiledMethod-compiling, Up: CompiledMethod -1.38.8 CompiledMethod: invoking +1.39.9 CompiledMethod: invoking ------------------------------- valueWithReceiver: anObject withArguments: args @@ -6214,8 +6330,8 @@  File: gst-base.info, Node: CompiledMethod-printing, Next: CompiledMethod-saving and loading, Prev: CompiledMethod-invoking, Up: CompiledMethod -1.38.9 CompiledMethod: printing -------------------------------- +1.39.10 CompiledMethod: printing +-------------------------------- printOn: aStream Print the receiver's class and selector on aStream @@ -6227,7 +6343,7 @@  File: gst-base.info, Node: CompiledMethod-saving and loading, Next: CompiledMethod-source code, Prev: CompiledMethod-printing, Up: CompiledMethod -1.38.10 CompiledMethod: saving and loading +1.39.11 CompiledMethod: saving and loading ------------------------------------------ to @@ -6241,7 +6357,7 @@  File: gst-base.info, Node: CompiledMethod-source code, Next: CompiledMethod-testing, Prev: CompiledMethod-saving and loading, Up: CompiledMethod -1.38.11 CompiledMethod: source code +1.39.12 CompiledMethod: source code ----------------------------------- methodRecompilationSourceString @@ -6265,7 +6381,7 @@  File: gst-base.info, Node: CompiledMethod-testing, Prev: CompiledMethod-source code, Up: CompiledMethod -1.38.12 CompiledMethod: testing +1.39.13 CompiledMethod: testing ------------------------------- accesses: instVarIndex @@ -6284,7 +6400,7 @@  File: gst-base.info, Node: ContextPart, Next: Continuation, Prev: CompiledMethod, Up: Base classes -1.39 ContextPart +1.40 ContextPart ================ Defined in namespace Smalltalk @@ -6304,14 +6420,13 @@ * ContextPart-copying:: (instance) * ContextPart-debugging:: (instance) * ContextPart-enumerating:: (instance) -* ContextPart-exception handling:: (instance) * ContextPart-printing:: (instance) * ContextPart-security checks:: (instance)  File: gst-base.info, Node: ContextPart class-built ins, Next: ContextPart class-exception handling, Up: ContextPart -1.39.1 ContextPart class: built ins +1.40.1 ContextPart class: built ins ----------------------------------- thisContext @@ -6322,7 +6437,7 @@  File: gst-base.info, Node: ContextPart class-exception handling, Next: ContextPart-accessing, Prev: ContextPart class-built ins, Up: ContextPart -1.39.2 ContextPart class: exception handling +1.40.2 ContextPart class: exception handling -------------------------------------------- backtrace @@ -6333,28 +6448,19 @@ Print a backtrace from the caller to the bottom of the stack on aStream -lastUnwindPoint - Private - Return the last context marked as an unwind point, or - our environment if none is. - -removeLastUnwindPoint - Private - Return and remove the last context marked as an unwind - point, or our environment if the last unwind point belongs to - another environment. - unwind Return execution to the last context marked as an unwind point, returning nil on that stack. unwind: returnValue - Return execution to the last context marked as an unwind point, - returning returnValue on that stack. + Return execution to the innermost #valueWithUnwind call, passing it + returnValue.  File: gst-base.info, Node: ContextPart-accessing, Next: ContextPart-built ins, Prev: ContextPart class-exception handling, Up: ContextPart -1.39.3 ContextPart: accessing +1.40.3 ContextPart: accessing ----------------------------- client @@ -6362,6 +6468,9 @@ the message that created this context. Fail if the receiver has no parent +currentFileName + Answer the name of the file where the method source code is + environment To create a valid execution environment for the interpreter even before it starts, GST creates a fake context whose selector is nil @@ -6459,7 +6568,7 @@  File: gst-base.info, Node: ContextPart-built ins, Next: ContextPart-copying, Prev: ContextPart-accessing, Up: ContextPart -1.39.4 ContextPart: built ins +1.40.4 ContextPart: built ins ----------------------------- continue: anObject @@ -6476,7 +6585,7 @@  File: gst-base.info, Node: ContextPart-copying, Next: ContextPart-debugging, Prev: ContextPart-built ins, Up: ContextPart -1.39.5 ContextPart: copying +1.40.5 ContextPart: copying --------------------------- copyStack @@ -6490,13 +6599,18 @@  File: gst-base.info, Node: ContextPart-debugging, Next: ContextPart-enumerating, Prev: ContextPart-copying, Up: ContextPart -1.39.6 ContextPart: debugging +1.40.6 ContextPart: debugging ----------------------------- currentLine Answer the 1-based number of the line that is pointed to by the - receiver's instruction pointer. It is always 1 unless the - DebugTools package is loaded. + receiver's instruction pointer. The DebugTools package caches + information, thus making the implementation faster. + +currentLineInFile + Answer the 1-based number of the line that is pointed to by the + receiver's instruction pointer, relative to the method's file. + The implementation is slow unless the DebugTools package is loaded. debugger Answer the debugger that is attached to the given context. It is @@ -6513,9 +6627,9 @@  -File: gst-base.info, Node: ContextPart-enumerating, Next: ContextPart-exception handling, Prev: ContextPart-debugging, Up: ContextPart +File: gst-base.info, Node: ContextPart-enumerating, Next: ContextPart-printing, Prev: ContextPart-debugging, Up: ContextPart -1.39.7 ContextPart: enumerating +1.40.7 ContextPart: enumerating ------------------------------- scanBacktraceFor: selectors do: aBlock @@ -6530,19 +6644,9 @@  -File: gst-base.info, Node: ContextPart-exception handling, Next: ContextPart-printing, Prev: ContextPart-enumerating, Up: ContextPart - -1.39.8 ContextPart: exception handling --------------------------------------- - -mark - Add the receiver as a possible unwind point - - - -File: gst-base.info, Node: ContextPart-printing, Next: ContextPart-security checks, Prev: ContextPart-exception handling, Up: ContextPart +File: gst-base.info, Node: ContextPart-printing, Next: ContextPart-security checks, Prev: ContextPart-enumerating, Up: ContextPart -1.39.9 ContextPart: printing +1.40.8 ContextPart: printing ---------------------------- backtrace @@ -6557,8 +6661,8 @@  File: gst-base.info, Node: ContextPart-security checks, Prev: ContextPart-printing, Up: ContextPart -1.39.10 ContextPart: security checks ------------------------------------- +1.40.9 ContextPart: security checks +----------------------------------- checkSecurityFor: perm Answer the receiver. @@ -6582,7 +6686,7 @@  File: gst-base.info, Node: Continuation, Next: CPtr, Prev: ContextPart, Up: Base classes -1.40 Continuation +1.41 Continuation ================= Defined in namespace Smalltalk @@ -6602,7 +6706,7 @@  File: gst-base.info, Node: Continuation class-instance creation, Next: Continuation-invocation, Up: Continuation -1.40.1 Continuation class: instance creation +1.41.1 Continuation class: instance creation -------------------------------------------- current @@ -6622,7 +6726,7 @@  File: gst-base.info, Node: Continuation-invocation, Prev: Continuation class-instance creation, Up: Continuation -1.40.2 Continuation: invocation +1.41.2 Continuation: invocation ------------------------------- callCC @@ -6660,7 +6764,7 @@  File: gst-base.info, Node: CPtr, Next: CPtrCType, Prev: Continuation, Up: Base classes -1.41 CPtr +1.42 CPtr ========= Defined in namespace Smalltalk @@ -6674,7 +6778,7 @@  File: gst-base.info, Node: CPtr-accessing, Up: CPtr -1.41.1 CPtr: accessing +1.42.1 CPtr: accessing ---------------------- alignof @@ -6696,7 +6800,7 @@  File: gst-base.info, Node: CPtrCType, Next: CScalar, Prev: CPtr, Up: Base classes -1.42 CPtrCType +1.43 CPtrCType ============== Defined in namespace Smalltalk @@ -6712,7 +6816,7 @@  File: gst-base.info, Node: CPtrCType class-instance creation, Next: CPtrCType-accessing, Up: CPtrCType -1.42.1 CPtrCType class: instance creation +1.43.1 CPtrCType class: instance creation ----------------------------------------- elementType: aCType @@ -6726,7 +6830,7 @@  File: gst-base.info, Node: CPtrCType-accessing, Next: CPtrCType-storing, Prev: CPtrCType class-instance creation, Up: CPtrCType -1.42.2 CPtrCType: accessing +1.43.2 CPtrCType: accessing --------------------------- elementType @@ -6742,7 +6846,7 @@  File: gst-base.info, Node: CPtrCType-storing, Prev: CPtrCType-accessing, Up: CPtrCType -1.42.3 CPtrCType: storing +1.43.3 CPtrCType: storing ------------------------- storeOn: aStream @@ -6752,7 +6856,7 @@  File: gst-base.info, Node: CScalar, Next: CScalarCType, Prev: CPtrCType, Up: Base classes -1.43 CScalar +1.44 CScalar ============ Defined in namespace Smalltalk @@ -6767,9 +6871,13 @@  File: gst-base.info, Node: CScalar class-instance creation, Next: CScalar-accessing, Up: CScalar -1.43.1 CScalar class: instance creation +1.44.1 CScalar class: instance creation --------------------------------------- +gcValue: anObject + Answer a newly allocated CObject containing the passed value, + anObject, in garbage-collected storage. + type Answer a CType for the receiver--for example, CByteType if the receiver is CByte. @@ -6783,7 +6891,7 @@  File: gst-base.info, Node: CScalar-accessing, Prev: CScalar class-instance creation, Up: CScalar -1.43.2 CScalar: accessing +1.44.2 CScalar: accessing ------------------------- cObjStoredType @@ -6802,7 +6910,7 @@  File: gst-base.info, Node: CScalarCType, Next: CShort, Prev: CScalar, Up: Base classes -1.44 CScalarCType +1.45 CScalarCType ================= Defined in namespace Smalltalk @@ -6817,7 +6925,7 @@  File: gst-base.info, Node: CScalarCType-accessing, Next: CScalarCType-storing, Up: CScalarCType -1.44.1 CScalarCType: accessing +1.45.1 CScalarCType: accessing ------------------------------ valueType @@ -6829,7 +6937,7 @@  File: gst-base.info, Node: CScalarCType-storing, Prev: CScalarCType-accessing, Up: CScalarCType -1.44.2 CScalarCType: storing +1.45.2 CScalarCType: storing ---------------------------- storeOn: aStream @@ -6839,7 +6947,7 @@  File: gst-base.info, Node: CShort, Next: CSmalltalk, Prev: CScalarCType, Up: Base classes -1.45 CShort +1.46 CShort =========== Defined in namespace Smalltalk @@ -6854,7 +6962,7 @@  File: gst-base.info, Node: CShort class-accessing, Next: CShort-accessing, Up: CShort -1.45.1 CShort class: accessing +1.46.1 CShort class: accessing ------------------------------ alignof @@ -6871,7 +6979,7 @@  File: gst-base.info, Node: CShort-accessing, Prev: CShort class-accessing, Up: CShort -1.45.2 CShort: accessing +1.46.2 CShort: accessing ------------------------ alignof @@ -6887,7 +6995,7 @@  File: gst-base.info, Node: CSmalltalk, Next: CString, Prev: CShort, Up: Base classes -1.46 CSmalltalk +1.47 CSmalltalk =============== Defined in namespace Smalltalk @@ -6902,7 +7010,7 @@  File: gst-base.info, Node: CSmalltalk class-accessing, Next: CSmalltalk-accessing, Up: CSmalltalk -1.46.1 CSmalltalk class: accessing +1.47.1 CSmalltalk class: accessing ---------------------------------- alignof @@ -6919,7 +7027,7 @@  File: gst-base.info, Node: CSmalltalk-accessing, Prev: CSmalltalk class-accessing, Up: CSmalltalk -1.46.2 CSmalltalk: accessing +1.47.2 CSmalltalk: accessing ---------------------------- alignof @@ -6935,7 +7043,7 @@  File: gst-base.info, Node: CString, Next: CStringCType, Prev: CSmalltalk, Up: Base classes -1.47 CString +1.48 CString ============ Defined in namespace Smalltalk @@ -6965,7 +7073,7 @@  File: gst-base.info, Node: CString class-accessing, Next: CString class-instance creation, Up: CString -1.47.1 CString class: accessing +1.48.1 CString class: accessing ------------------------------- cObjStoredType @@ -6976,7 +7084,7 @@  File: gst-base.info, Node: CString class-instance creation, Next: CString-accessing, Prev: CString class-accessing, Up: CString -1.47.2 CString class: instance creation +1.48.2 CString class: instance creation --------------------------------------- type @@ -6992,7 +7100,7 @@  File: gst-base.info, Node: CString-accessing, Prev: CString class-instance creation, Up: CString -1.47.3 CString: accessing +1.48.3 CString: accessing ------------------------- cObjStoredType @@ -7011,7 +7119,7 @@  File: gst-base.info, Node: CStringCType, Next: CStruct, Prev: CString, Up: Base classes -1.48 CStringCType +1.49 CStringCType ================= Defined in namespace Smalltalk @@ -7025,7 +7133,7 @@  File: gst-base.info, Node: CStringCType-accessing, Up: CStringCType -1.48.1 CStringCType: accessing +1.49.1 CStringCType: accessing ------------------------------ elementType @@ -7035,7 +7143,7 @@  File: gst-base.info, Node: CStruct, Next: CType, Prev: CStringCType, Up: Base classes -1.49 CStruct +1.50 CStruct ============ Defined in namespace Smalltalk @@ -7049,7 +7157,7 @@  File: gst-base.info, Node: CStruct class-subclass creation, Up: CStruct -1.49.1 CStruct class: subclass creation +1.50.1 CStruct class: subclass creation --------------------------------------- declaration: array @@ -7059,7 +7167,7 @@  File: gst-base.info, Node: CType, Next: CUChar, Prev: CStruct, Up: Base classes -1.50 CType +1.51 CType ========== Defined in namespace Smalltalk @@ -7091,7 +7199,7 @@  File: gst-base.info, Node: CType class-C instance creation, Next: CType class-initialization, Up: CType -1.50.1 CType class: C instance creation +1.51.1 CType class: C instance creation --------------------------------------- cObjectBinding: aCObjectSubclassBinding @@ -7113,7 +7221,7 @@  File: gst-base.info, Node: CType class-initialization, Next: CType-accessing, Prev: CType class-C instance creation, Up: CType -1.50.2 CType class: initialization +1.51.2 CType class: initialization ---------------------------------- initialize @@ -7123,7 +7231,7 @@  File: gst-base.info, Node: CType-accessing, Next: CType-C instance creation, Prev: CType class-initialization, Up: CType -1.50.3 CType: accessing +1.51.3 CType: accessing ----------------------- alignof @@ -7153,7 +7261,7 @@  File: gst-base.info, Node: CType-C instance creation, Next: CType-storing, Prev: CType-accessing, Up: CType -1.50.4 CType: C instance creation +1.51.4 CType: C instance creation --------------------------------- address: cObjOrInt @@ -7161,6 +7269,11 @@ receiver, pointing to the given address (identified by an Integer or CObject). +gcNew + Allocate a new CObject with the type (class) identified by the + receiver. The object is movable in memory, but on the other hand + it is garbage-collected automatically. + new Allocate a new CObject with the type (class) identified by the receiver. It is the caller's responsibility to free the memory @@ -7170,7 +7283,7 @@  File: gst-base.info, Node: CType-storing, Prev: CType-C instance creation, Up: CType -1.50.5 CType: storing +1.51.5 CType: storing --------------------- storeOn: aStream @@ -7180,7 +7293,7 @@  File: gst-base.info, Node: CUChar, Next: CUInt, Prev: CType, Up: Base classes -1.51 CUChar +1.52 CUChar =========== Defined in namespace Smalltalk @@ -7195,7 +7308,7 @@  File: gst-base.info, Node: CUChar class-getting info, Next: CUChar-accessing, Up: CUChar -1.51.1 CUChar class: getting info +1.52.1 CUChar class: getting info --------------------------------- alignof @@ -7212,7 +7325,7 @@  File: gst-base.info, Node: CUChar-accessing, Prev: CUChar class-getting info, Up: CUChar -1.51.2 CUChar: accessing +1.52.2 CUChar: accessing ------------------------ alignof @@ -7228,7 +7341,7 @@  File: gst-base.info, Node: CUInt, Next: CULong, Prev: CUChar, Up: Base classes -1.52 CUInt +1.53 CUInt ========== Defined in namespace Smalltalk @@ -7243,7 +7356,7 @@  File: gst-base.info, Node: CUInt class-accessing, Next: CUInt-accessing, Up: CUInt -1.52.1 CUInt class: accessing +1.53.1 CUInt class: accessing ----------------------------- alignof @@ -7260,7 +7373,7 @@  File: gst-base.info, Node: CUInt-accessing, Prev: CUInt class-accessing, Up: CUInt -1.52.2 CUInt: accessing +1.53.2 CUInt: accessing ----------------------- alignof @@ -7276,7 +7389,7 @@  File: gst-base.info, Node: CULong, Next: CUnion, Prev: CUInt, Up: Base classes -1.53 CULong +1.54 CULong =========== Defined in namespace Smalltalk @@ -7291,7 +7404,7 @@  File: gst-base.info, Node: CULong class-accessing, Next: CULong-accessing, Up: CULong -1.53.1 CULong class: accessing +1.54.1 CULong class: accessing ------------------------------ alignof @@ -7308,7 +7421,7 @@  File: gst-base.info, Node: CULong-accessing, Prev: CULong class-accessing, Up: CULong -1.53.2 CULong: accessing +1.54.2 CULong: accessing ------------------------ alignof @@ -7324,7 +7437,7 @@  File: gst-base.info, Node: CUnion, Next: CUShort, Prev: CULong, Up: Base classes -1.54 CUnion +1.55 CUnion =========== Defined in namespace Smalltalk @@ -7338,7 +7451,7 @@  File: gst-base.info, Node: CUnion class-subclass creation, Up: CUnion -1.54.1 CUnion class: subclass creation +1.55.1 CUnion class: subclass creation -------------------------------------- declaration: array @@ -7348,7 +7461,7 @@  File: gst-base.info, Node: CUShort, Next: Date, Prev: CUnion, Up: Base classes -1.55 CUShort +1.56 CUShort ============ Defined in namespace Smalltalk @@ -7363,7 +7476,7 @@  File: gst-base.info, Node: CUShort class-accessing, Next: CUShort-accessing, Up: CUShort -1.55.1 CUShort class: accessing +1.56.1 CUShort class: accessing ------------------------------- alignof @@ -7380,7 +7493,7 @@  File: gst-base.info, Node: CUShort-accessing, Prev: CUShort class-accessing, Up: CUShort -1.55.2 CUShort: accessing +1.56.2 CUShort: accessing ------------------------- alignof @@ -7396,7 +7509,7 @@  File: gst-base.info, Node: Date, Next: DateTime, Prev: CUShort, Up: Base classes -1.56 Date +1.57 Date ========= Defined in namespace Smalltalk @@ -7434,7 +7547,7 @@  File: gst-base.info, Node: Date class-basic, Next: Date class-instance creation (ANSI), Up: Date -1.56.1 Date class: basic +1.57.1 Date class: basic ------------------------ abbreviationOfDay: dayIndex @@ -7476,7 +7589,7 @@  File: gst-base.info, Node: Date class-instance creation (ANSI), Next: Date class-instance creation (Blue Book), Prev: Date class-basic, Up: Date -1.56.2 Date class: instance creation (ANSI) +1.57.2 Date class: instance creation (ANSI) ------------------------------------------- year: y day: d hour: h minute: min second: s @@ -7490,7 +7603,7 @@  File: gst-base.info, Node: Date class-instance creation (Blue Book), Next: Date-basic, Prev: Date class-instance creation (ANSI), Up: Date -1.56.3 Date class: instance creation (Blue Book) +1.57.3 Date class: instance creation (Blue Book) ------------------------------------------------ dateAndTimeNow @@ -7535,7 +7648,7 @@  File: gst-base.info, Node: Date-basic, Next: Date-compatibility (non-ANSI), Prev: Date class-instance creation (Blue Book), Up: Date -1.56.4 Date: basic +1.57.4 Date: basic ------------------ - aDate @@ -7555,7 +7668,7 @@  File: gst-base.info, Node: Date-compatibility (non-ANSI), Next: Date-date computations, Prev: Date-basic, Up: Date -1.56.5 Date: compatibility (non-ANSI) +1.57.5 Date: compatibility (non-ANSI) ------------------------------------- day @@ -7572,7 +7685,7 @@  File: gst-base.info, Node: Date-date computations, Next: Date-printing, Prev: Date-compatibility (non-ANSI), Up: Date -1.56.6 Date: date computations +1.57.6 Date: date computations ------------------------------ asSeconds @@ -7640,7 +7753,7 @@  File: gst-base.info, Node: Date-printing, Next: Date-storing, Prev: Date-date computations, Up: Date -1.56.7 Date: printing +1.57.7 Date: printing --------------------- printOn: aStream @@ -7650,7 +7763,7 @@  File: gst-base.info, Node: Date-storing, Next: Date-testing, Prev: Date-printing, Up: Date -1.56.8 Date: storing +1.57.8 Date: storing -------------------- storeOn: aStream @@ -7660,7 +7773,7 @@  File: gst-base.info, Node: Date-testing, Prev: Date-storing, Up: Date -1.56.9 Date: testing +1.57.9 Date: testing -------------------- < aDate @@ -7676,7 +7789,7 @@  File: gst-base.info, Node: DateTime, Next: DeferredVariableBinding, Prev: Date, Up: Base classes -1.57 DateTime +1.58 DateTime ============= Defined in namespace Smalltalk @@ -7700,7 +7813,7 @@  File: gst-base.info, Node: DateTime class-information, Next: DateTime class-instance creation, Up: DateTime -1.57.1 DateTime class: information +1.58.1 DateTime class: information ---------------------------------- clockPrecision @@ -7713,7 +7826,7 @@  File: gst-base.info, Node: DateTime class-instance creation, Next: DateTime class-instance creation (non-ANSI), Prev: DateTime class-information, Up: DateTime -1.57.2 DateTime class: instance creation +1.58.2 DateTime class: instance creation ---------------------------------------- now @@ -7746,7 +7859,7 @@  File: gst-base.info, Node: DateTime class-instance creation (non-ANSI), Next: DateTime-basic, Prev: DateTime class-instance creation, Up: DateTime -1.57.3 DateTime class: instance creation (non-ANSI) +1.58.3 DateTime class: instance creation (non-ANSI) --------------------------------------------------- date: aDate time: aTime @@ -7766,7 +7879,7 @@  File: gst-base.info, Node: DateTime-basic, Next: DateTime-computations, Prev: DateTime class-instance creation (non-ANSI), Up: DateTime -1.57.4 DateTime: basic +1.58.4 DateTime: basic ---------------------- + aDuration @@ -7779,7 +7892,7 @@  File: gst-base.info, Node: DateTime-computations, Next: DateTime-printing, Prev: DateTime-basic, Up: DateTime -1.57.5 DateTime: computations +1.58.5 DateTime: computations ----------------------------- asSeconds @@ -7811,7 +7924,7 @@  File: gst-base.info, Node: DateTime-printing, Next: DateTime-splitting in dates & times, Prev: DateTime-computations, Up: DateTime -1.57.6 DateTime: printing +1.58.6 DateTime: printing ------------------------- printOn: aStream @@ -7821,7 +7934,7 @@  File: gst-base.info, Node: DateTime-splitting in dates & times, Next: DateTime-storing, Prev: DateTime-printing, Up: DateTime -1.57.7 DateTime: splitting in dates & times +1.58.7 DateTime: splitting in dates & times ------------------------------------------- asDate @@ -7840,7 +7953,7 @@  File: gst-base.info, Node: DateTime-storing, Next: DateTime-testing, Prev: DateTime-splitting in dates & times, Up: DateTime -1.57.8 DateTime: storing +1.58.8 DateTime: storing ------------------------ storeOn: aStream @@ -7850,7 +7963,7 @@  File: gst-base.info, Node: DateTime-testing, Next: DateTime-time zones, Prev: DateTime-storing, Up: DateTime -1.57.9 DateTime: testing +1.58.9 DateTime: testing ------------------------ < aDateTime @@ -7866,7 +7979,7 @@  File: gst-base.info, Node: DateTime-time zones, Prev: DateTime-testing, Up: DateTime -1.57.10 DateTime: time zones +1.58.10 DateTime: time zones ---------------------------- asLocal @@ -7901,7 +8014,7 @@  File: gst-base.info, Node: DeferredVariableBinding, Next: Delay, Prev: DateTime, Up: Base classes -1.58 DeferredVariableBinding +1.59 DeferredVariableBinding ============================ Defined in namespace Smalltalk @@ -7920,7 +8033,7 @@  File: gst-base.info, Node: DeferredVariableBinding class-basic, Next: DeferredVariableBinding-basic, Up: DeferredVariableBinding -1.58.1 DeferredVariableBinding class: basic +1.59.1 DeferredVariableBinding class: basic ------------------------------------------- key: aSymbol class: aClass defaultDictionary: aDictionary @@ -7936,7 +8049,7 @@  File: gst-base.info, Node: DeferredVariableBinding-basic, Next: DeferredVariableBinding-storing, Prev: DeferredVariableBinding class-basic, Up: DeferredVariableBinding -1.58.2 DeferredVariableBinding: basic +1.59.2 DeferredVariableBinding: basic ------------------------------------- path @@ -7952,7 +8065,7 @@  File: gst-base.info, Node: DeferredVariableBinding-storing, Prev: DeferredVariableBinding-basic, Up: DeferredVariableBinding -1.58.3 DeferredVariableBinding: storing +1.59.3 DeferredVariableBinding: storing --------------------------------------- printOn: aStream @@ -7965,7 +8078,7 @@  File: gst-base.info, Node: Delay, Next: DelayedAdaptor, Prev: DeferredVariableBinding, Up: Base classes -1.59 Delay +1.60 Delay ========== Defined in namespace Smalltalk @@ -7990,7 +8103,7 @@  File: gst-base.info, Node: Delay class-instance creation, Next: Delay class-timer process, Up: Delay -1.59.1 Delay class: instance creation +1.60.1 Delay class: instance creation ------------------------------------- forMilliseconds: millisecondCount @@ -8007,7 +8120,7 @@  File: gst-base.info, Node: Delay class-timer process, Next: Delay-accessing, Prev: Delay class-instance creation, Up: Delay -1.59.2 Delay class: timer process +1.60.2 Delay class: timer process --------------------------------- handleDelayEvent @@ -8034,7 +8147,7 @@  File: gst-base.info, Node: Delay-accessing, Next: Delay-comparing, Prev: Delay class-timer process, Up: Delay -1.59.3 Delay: accessing +1.60.3 Delay: accessing ----------------------- delayDuration @@ -8047,7 +8160,7 @@  File: gst-base.info, Node: Delay-comparing, Next: Delay-delaying, Prev: Delay-accessing, Up: Delay -1.59.4 Delay: comparing +1.60.4 Delay: comparing ----------------------- = aDelay @@ -8060,7 +8173,7 @@  File: gst-base.info, Node: Delay-delaying, Next: Delay-initialization, Prev: Delay-comparing, Up: Delay -1.59.5 Delay: delaying +1.60.5 Delay: delaying ---------------------- wait @@ -8072,7 +8185,7 @@  File: gst-base.info, Node: Delay-initialization, Next: Delay-instance creation, Prev: Delay-delaying, Up: Delay -1.59.6 Delay: initialization +1.60.6 Delay: initialization ---------------------------- initForMilliseconds: value @@ -8082,7 +8195,7 @@  File: gst-base.info, Node: Delay-instance creation, Prev: Delay-initialization, Up: Delay -1.59.7 Delay: instance creation +1.60.7 Delay: instance creation ------------------------------- initUntilMilliseconds: value @@ -8093,7 +8206,7 @@  File: gst-base.info, Node: DelayedAdaptor, Next: Dictionary, Prev: Delay, Up: Base classes -1.60 DelayedAdaptor +1.61 DelayedAdaptor =================== Defined in namespace Smalltalk @@ -8111,7 +8224,7 @@  File: gst-base.info, Node: DelayedAdaptor-accessing, Up: DelayedAdaptor -1.60.1 DelayedAdaptor: accessing +1.61.1 DelayedAdaptor: accessing -------------------------------- trigger @@ -8128,7 +8241,7 @@  File: gst-base.info, Node: Dictionary, Next: DirectedMessage, Prev: DelayedAdaptor, Up: Base classes -1.61 Dictionary +1.62 Dictionary =============== Defined in namespace Smalltalk @@ -8152,7 +8265,7 @@ * Dictionary-dictionary enumerating:: (instance) * Dictionary-dictionary removing:: (instance) * Dictionary-dictionary testing:: (instance) -* Dictionary-polymorphism hacks:: (instance) +* Dictionary-namespace protocol:: (instance) * Dictionary-printing:: (instance) * Dictionary-rehashing:: (instance) * Dictionary-storing:: (instance) @@ -8161,7 +8274,7 @@  File: gst-base.info, Node: Dictionary class-instance creation, Next: Dictionary-accessing, Up: Dictionary -1.61.1 Dictionary class: instance creation +1.62.1 Dictionary class: instance creation ------------------------------------------ from: anArray @@ -8176,7 +8289,7 @@  File: gst-base.info, Node: Dictionary-accessing, Next: Dictionary-awful ST-80 compatibility hacks, Prev: Dictionary class-instance creation, Up: Dictionary -1.61.2 Dictionary: accessing +1.62.2 Dictionary: accessing ---------------------------- add: newObject @@ -8240,7 +8353,7 @@  File: gst-base.info, Node: Dictionary-awful ST-80 compatibility hacks, Next: Dictionary-dictionary enumerating, Prev: Dictionary-accessing, Up: Dictionary -1.61.3 Dictionary: awful ST-80 compatibility hacks +1.62.3 Dictionary: awful ST-80 compatibility hacks -------------------------------------------------- findKeyIndex: key @@ -8252,7 +8365,7 @@  File: gst-base.info, Node: Dictionary-dictionary enumerating, Next: Dictionary-dictionary removing, Prev: Dictionary-awful ST-80 compatibility hacks, Up: Dictionary -1.61.4 Dictionary: dictionary enumerating +1.62.4 Dictionary: dictionary enumerating ----------------------------------------- associationsDo: aBlock @@ -8287,7 +8400,7 @@  File: gst-base.info, Node: Dictionary-dictionary removing, Next: Dictionary-dictionary testing, Prev: Dictionary-dictionary enumerating, Up: Dictionary -1.61.5 Dictionary: dictionary removing +1.62.5 Dictionary: dictionary removing -------------------------------------- remove: anAssociation @@ -8312,9 +8425,9 @@  -File: gst-base.info, Node: Dictionary-dictionary testing, Next: Dictionary-polymorphism hacks, Prev: Dictionary-dictionary removing, Up: Dictionary +File: gst-base.info, Node: Dictionary-dictionary testing, Next: Dictionary-namespace protocol, Prev: Dictionary-dictionary removing, Up: Dictionary -1.61.6 Dictionary: dictionary testing +1.62.6 Dictionary: dictionary testing ------------------------------------- includes: anObject @@ -8333,19 +8446,68 @@  -File: gst-base.info, Node: Dictionary-polymorphism hacks, Next: Dictionary-printing, Prev: Dictionary-dictionary testing, Up: Dictionary +File: gst-base.info, Node: Dictionary-namespace protocol, Next: Dictionary-printing, Prev: Dictionary-dictionary testing, Up: Dictionary -1.61.7 Dictionary: polymorphism hacks +1.62.7 Dictionary: namespace protocol ------------------------------------- +allSuperspaces + Answer all the receiver's superspaces in a collection + +allSuperspacesDo: aBlock + Evaluate aBlock once for each of the receiver's superspaces (which + is none for BindingDictionary). + +definedKeys + Answer a kind of Set containing the keys of the receiver + +definesKey: key + Answer whether the receiver defines the given key. `Defines' means + that the receiver's superspaces, if any, are not considered. + +hereAssociationAt: key + Return the association for the variable named as specified by + `key' *in this namespace*. If the key is not found search will + *not* be carried on in superspaces and the method will fail. + +hereAssociationAt: key ifAbsent: aBlock + Return the association for the variable named as specified by + `key' *in this namespace*. If the key is not found search will + *not* be carried on in superspaces and aBlock will be immediately + evaluated. + +hereAt: key + Return the value associated to the variable named as specified by + `key' *in this namespace*. If the key is not found search will + *not* be carried on in superspaces and the method will fail. + +hereAt: key ifAbsent: aBlock + Return the value associated to the variable named as specified by + `key' *in this namespace*. If the key is not found search will + *not* be carried on in superspaces and aBlock will be immediately + evaluated. + +inheritsFrom: aNamespace + Answer whether aNamespace is one of the receiver's direct and + indirect superspaces + +superspace + Answer the receiver's superspace, which is nil for + BindingDictionary. + withAllSuperspaces - This method is needed by the compiler + Answer the receiver and all of its superspaces in a collection, + which is none for BindingDictionary + +withAllSuperspacesDo: aBlock + Invokes aBlock for the receiver and all superspaces, both direct + and indirect (though a BindingDictionary does not have any).  -File: gst-base.info, Node: Dictionary-printing, Next: Dictionary-rehashing, Prev: Dictionary-polymorphism hacks, Up: Dictionary +File: gst-base.info, Node: Dictionary-printing, Next: Dictionary-rehashing, Prev: Dictionary-namespace protocol, Up: Dictionary -1.61.8 Dictionary: printing +1.62.8 Dictionary: printing --------------------------- inspect @@ -8359,7 +8521,7 @@  File: gst-base.info, Node: Dictionary-rehashing, Next: Dictionary-storing, Prev: Dictionary-printing, Up: Dictionary -1.61.9 Dictionary: rehashing +1.62.9 Dictionary: rehashing ---------------------------- rehash @@ -8369,7 +8531,7 @@  File: gst-base.info, Node: Dictionary-storing, Next: Dictionary-testing, Prev: Dictionary-rehashing, Up: Dictionary -1.61.10 Dictionary: storing +1.62.10 Dictionary: storing --------------------------- storeOn: aStream @@ -8379,7 +8541,7 @@  File: gst-base.info, Node: Dictionary-testing, Prev: Dictionary-storing, Up: Dictionary -1.61.11 Dictionary: testing +1.62.11 Dictionary: testing --------------------------- = aDictionary @@ -8392,7 +8554,7 @@  File: gst-base.info, Node: DirectedMessage, Next: Directory, Prev: Dictionary, Up: Base classes -1.62 DirectedMessage +1.63 DirectedMessage ==================== Defined in namespace Smalltalk @@ -8412,7 +8574,7 @@  File: gst-base.info, Node: DirectedMessage class-creating instances, Next: DirectedMessage-accessing, Up: DirectedMessage -1.62.1 DirectedMessage class: creating instances +1.63.1 DirectedMessage class: creating instances ------------------------------------------------ receiver: anObject selector: aSymbol @@ -8434,7 +8596,7 @@  File: gst-base.info, Node: DirectedMessage-accessing, Next: DirectedMessage-basic, Prev: DirectedMessage class-creating instances, Up: DirectedMessage -1.62.2 DirectedMessage: accessing +1.63.2 DirectedMessage: accessing --------------------------------- receiver @@ -8447,7 +8609,7 @@  File: gst-base.info, Node: DirectedMessage-basic, Next: DirectedMessage-multiple process, Prev: DirectedMessage-accessing, Up: DirectedMessage -1.62.3 DirectedMessage: basic +1.63.3 DirectedMessage: basic ----------------------------- printOn: aStream @@ -8464,7 +8626,7 @@  File: gst-base.info, Node: DirectedMessage-multiple process, Next: DirectedMessage-saving and loading, Prev: DirectedMessage-basic, Up: DirectedMessage -1.62.4 DirectedMessage: multiple process +1.63.4 DirectedMessage: multiple process ---------------------------------------- fork @@ -8483,7 +8645,7 @@  File: gst-base.info, Node: DirectedMessage-saving and loading, Prev: DirectedMessage-multiple process, Up: DirectedMessage -1.62.5 DirectedMessage: saving and loading +1.63.5 DirectedMessage: saving and loading ------------------------------------------ reconstructOriginalObject @@ -8495,11 +8657,11 @@  File: gst-base.info, Node: Directory, Next: DLD, Prev: DirectedMessage, Up: Base classes -1.63 Directory +1.64 Directory ============== Defined in namespace Smalltalk -Superclass: File +Superclass: Object Category: Streams-Files I am the counterpart of File in a tree-structured file system: I can iterate through the file that I contain and construct new @@ -8512,13 +8674,11 @@ * Directory class-file name management:: (class) * Directory class-file operations:: (class) * Directory class-reading system defaults:: (class) -* Directory-accessing:: (instance) -* Directory-enumerating:: (instance)  File: gst-base.info, Node: Directory class-file name management, Next: Directory class-file operations, Up: Directory -1.63.1 Directory class: file name management +1.64.1 Directory class: file name management -------------------------------------------- append: fileName to: directory @@ -8536,7 +8696,7 @@  File: gst-base.info, Node: Directory class-file operations, Next: Directory class-reading system defaults, Prev: Directory class-file name management, Up: Directory -1.63.2 Directory class: file operations +1.64.2 Directory class: file operations --------------------------------------- allFilesMatching: aPattern do: aBlock @@ -8557,9 +8717,9 @@  -File: gst-base.info, Node: Directory class-reading system defaults, Next: Directory-accessing, Prev: Directory class-file operations, Up: Directory +File: gst-base.info, Node: Directory class-reading system defaults, Prev: Directory class-file operations, Up: Directory -1.63.3 Directory class: reading system defaults +1.64.3 Directory class: reading system defaults ----------------------------------------------- home @@ -8571,21 +8731,20 @@ kernel Answer the path in which a local version of the GNU Smalltalk kernel's Smalltalk source files were searched when the image was - created + created. libexec Answer the path to GNU Smalltalk's auxiliary executables localKernel Answer the path to the GNU Smalltalk kernel's Smalltalk source - files. Same as `Directory kernel' since GNU Smalltalk 2.4. + files. Same as `Directory kernel' since GNU Smalltalk 3.0. module Answer the path to GNU Smalltalk's dynamically loaded modules systemKernel - Answer the path to the GNU Smalltalk kernel's Smalltalk source - files. Same as `Directory kernel' since GNU Smalltalk 2.4. + Answer the path to the installed Smalltalk kernel source files. temporary Answer the path in which temporary files can be created. This is @@ -8597,71 +8756,9 @@  -File: gst-base.info, Node: Directory-accessing, Next: Directory-enumerating, Prev: Directory class-reading system defaults, Up: Directory - -1.63.4 Directory: accessing ---------------------------- - -at: aName - Answer a File or Directory object as appropriate for a file named - 'aName' in the directory represented by the receiver. - -directoryAt: aName - Answer a Directory object for a file named `aName' residing in the - directory represented by the receiver. - -fileAt: aName - Answer a File object for a file named `aName' residing in the - directory represented by the receiver. - -fullNameAt: aName - Answer a String containing the full path to a file named `aName' - which resides in the directory represented by the receiver. - -includes: aName - Answer whether a file named `aName' exists in the directory - represented by the receiver. - -nameAt: aName - Answer a String containing the path to a file named `aName' which - resides in the directory represented by the receiver. - -pathTo: destName - Compute the relative path from the receiver to destName. - - - -File: gst-base.info, Node: Directory-enumerating, Prev: Directory-accessing, Up: Directory - -1.63.5 Directory: enumerating ------------------------------ - -allFilesMatching: aPattern do: aBlock - Evaluate aBlock on the File objects that match aPattern (according - to String>>#match:) in the directory named by the receiver. - Recursively descend into directories. - -contents - Answer an Array with the names of the files in the directory - represented by the receiver. - -do: aBlock - Evaluate aBlock once for each file in the directory represented by - the receiver, passing its name. aBlock should not return. - -filesMatching: aPattern do: block - Evaluate block on the File objects that match aPattern (according - to String>>#match:) in the directory named by the receiver. - -namesMatching: aPattern do: block - Evaluate block on the file names that match aPattern (according to - String>>#match:) in the directory named by the receiver. - - - File: gst-base.info, Node: DLD, Next: DumperProxy, Prev: Directory, Up: Base classes -1.64 DLD +1.65 DLD ======== Defined in namespace Smalltalk @@ -8684,7 +8781,7 @@  File: gst-base.info, Node: DLD class-C call-outs, Next: DLD class-dynamic linking, Up: DLD -1.64.1 DLD class: C call-outs +1.65.1 DLD class: C call-outs ----------------------------- defineCFunc: aName as: aFuncAddr @@ -8694,7 +8791,7 @@  File: gst-base.info, Node: DLD class-dynamic linking, Prev: DLD class-C call-outs, Up: DLD -1.64.2 DLD class: dynamic linking +1.65.2 DLD class: dynamic linking --------------------------------- addLibrary: library @@ -8734,7 +8831,7 @@  File: gst-base.info, Node: DumperProxy, Next: Duration, Prev: DLD, Up: Base classes -1.65 DumperProxy +1.66 DumperProxy ================ Defined in namespace Smalltalk @@ -8753,7 +8850,7 @@  File: gst-base.info, Node: DumperProxy class-accessing, Next: DumperProxy class-instance creation, Up: DumperProxy -1.65.1 DumperProxy class: accessing +1.66.1 DumperProxy class: accessing ----------------------------------- acceptUsageForClass: aClass @@ -8767,7 +8864,7 @@  File: gst-base.info, Node: DumperProxy class-instance creation, Next: DumperProxy-saving and restoring, Prev: DumperProxy class-accessing, Up: DumperProxy -1.65.2 DumperProxy class: instance creation +1.66.2 DumperProxy class: instance creation ------------------------------------------- on: anObject @@ -8780,7 +8877,7 @@  File: gst-base.info, Node: DumperProxy-saving and restoring, Prev: DumperProxy class-instance creation, Up: DumperProxy -1.65.3 DumperProxy: saving and restoring +1.66.3 DumperProxy: saving and restoring ---------------------------------------- dumpTo: anObjectDumper @@ -8794,7 +8891,7 @@  File: gst-base.info, Node: Duration, Next: Error, Prev: DumperProxy, Up: Base classes -1.66 Duration +1.67 Duration ============= Defined in namespace Smalltalk @@ -8811,7 +8908,7 @@  File: gst-base.info, Node: Duration class-instance creation, Next: Duration class-instance creation (non ANSI), Up: Duration -1.66.1 Duration class: instance creation +1.67.1 Duration class: instance creation ---------------------------------------- days: d @@ -8831,7 +8928,7 @@  File: gst-base.info, Node: Duration class-instance creation (non ANSI), Next: Duration-arithmetics, Prev: Duration class-instance creation, Up: Duration -1.66.2 Duration class: instance creation (non ANSI) +1.67.2 Duration class: instance creation (non ANSI) --------------------------------------------------- fromDays: days seconds: secs offset: unused @@ -8843,7 +8940,7 @@  File: gst-base.info, Node: Duration-arithmetics, Prev: Duration class-instance creation (non ANSI), Up: Duration -1.66.3 Duration: arithmetics +1.67.3 Duration: arithmetics ---------------------------- * factor @@ -8888,7 +8985,7 @@  File: gst-base.info, Node: Error, Next: Exception, Prev: Duration, Up: Base classes -1.67 Error +1.68 Error ========== Defined in namespace Smalltalk @@ -8903,7 +9000,7 @@  File: gst-base.info, Node: Error-exception description, Up: Error -1.67.1 Error: exception description +1.68.1 Error: exception description ----------------------------------- description @@ -8917,7 +9014,7 @@  File: gst-base.info, Node: Exception, Next: ExceptionSet, Prev: Error, Up: Base classes -1.68 Exception +1.69 Exception ============== Defined in namespace Smalltalk @@ -8947,7 +9044,7 @@  File: gst-base.info, Node: Exception class-comparison, Next: Exception class-creating ExceptionCollections, Up: Exception -1.68.1 Exception class: comparison +1.69.1 Exception class: comparison ---------------------------------- goodness: anException @@ -8962,7 +9059,7 @@  File: gst-base.info, Node: Exception class-creating ExceptionCollections, Next: Exception class-initialization, Prev: Exception class-comparison, Up: Exception -1.68.2 Exception class: creating ExceptionCollections +1.69.2 Exception class: creating ExceptionCollections ----------------------------------------------------- , aTrappableEvent @@ -8973,7 +9070,7 @@  File: gst-base.info, Node: Exception class-initialization, Next: Exception class-instance creation, Prev: Exception class-creating ExceptionCollections, Up: Exception -1.68.3 Exception class: initialization +1.69.3 Exception class: initialization -------------------------------------- initialize @@ -8984,7 +9081,7 @@  File: gst-base.info, Node: Exception class-instance creation, Next: Exception class-interoperability with TrappableEvents, Prev: Exception class-initialization, Up: Exception -1.68.4 Exception class: instance creation +1.69.4 Exception class: instance creation ----------------------------------------- new @@ -9003,7 +9100,7 @@  File: gst-base.info, Node: Exception class-interoperability with TrappableEvents, Next: Exception-comparison, Prev: Exception class-instance creation, Up: Exception -1.68.5 Exception class: interoperability with TrappableEvents +1.69.5 Exception class: interoperability with TrappableEvents ------------------------------------------------------------- allExceptionsDo: aBlock @@ -9017,7 +9114,7 @@  File: gst-base.info, Node: Exception-comparison, Next: Exception-exception description, Prev: Exception class-interoperability with TrappableEvents, Up: Exception -1.68.6 Exception: comparison +1.69.6 Exception: comparison ---------------------------- = anObject @@ -9032,7 +9129,7 @@  File: gst-base.info, Node: Exception-exception description, Next: Exception-exception signaling, Prev: Exception-comparison, Up: Exception -1.68.7 Exception: exception description +1.69.7 Exception: exception description --------------------------------------- defaultAction @@ -9048,7 +9145,7 @@  File: gst-base.info, Node: Exception-exception signaling, Prev: Exception-exception description, Up: Exception -1.68.8 Exception: exception signaling +1.69.8 Exception: exception signaling ------------------------------------- signal @@ -9062,7 +9159,7 @@  File: gst-base.info, Node: ExceptionSet, Next: False, Prev: Exception, Up: Base classes -1.69 ExceptionSet +1.70 ExceptionSet ================= Defined in namespace Smalltalk @@ -9081,7 +9178,7 @@  File: gst-base.info, Node: ExceptionSet class-instance creation, Next: ExceptionSet-enumerating, Up: ExceptionSet -1.69.1 ExceptionSet class: instance creation +1.70.1 ExceptionSet class: instance creation -------------------------------------------- new @@ -9091,7 +9188,7 @@  File: gst-base.info, Node: ExceptionSet-enumerating, Prev: ExceptionSet class-instance creation, Up: ExceptionSet -1.69.2 ExceptionSet: enumerating +1.70.2 ExceptionSet: enumerating -------------------------------- allExceptionsDo: aBlock @@ -9110,7 +9207,7 @@  File: gst-base.info, Node: False, Next: File, Prev: ExceptionSet, Up: Base classes -1.70 False +1.71 False ========== Defined in namespace Smalltalk @@ -9128,7 +9225,7 @@  File: gst-base.info, Node: False-basic, Next: False-C hacks, Up: False -1.70.1 False: basic +1.71.1 False: basic ------------------- & aBoolean @@ -9172,7 +9269,7 @@  File: gst-base.info, Node: False-C hacks, Next: False-printing, Prev: False-basic, Up: False -1.70.2 False: C hacks +1.71.2 False: C hacks --------------------- asCBooleanValue @@ -9182,7 +9279,7 @@  File: gst-base.info, Node: False-printing, Prev: False-C hacks, Up: False -1.70.3 False: printing +1.71.3 False: printing ---------------------- printOn: aStream @@ -9192,35 +9289,34 @@  File: gst-base.info, Node: File, Next: FileDescriptor, Prev: False, Up: Base classes -1.71 File +1.72 File ========= Defined in namespace Smalltalk -Superclass: Object +Superclass: FilePath Category: Streams-Files - I expose the syntax of file names, including paths. I know how to - manipulate such a path by splitting it into its components. In - addition, I expose information about files (both real and virtual) - such as their size and timestamps. + I enable access to the properties of files that are on disk. * Menu: * File class-C functions:: (class) -* File class-file name management:: (class) * File class-file operations:: (class) +* File class-initialization:: (class) * File class-instance creation:: (class) * File class-reading system defaults:: (class) * File class-testing:: (class) * File-accessing:: (instance) +* File-basic:: (instance) +* File-directory operations:: (instance) * File-file name management:: (instance) * File-file operations:: (instance) -* File-printing:: (instance) +* File-still unclassified:: (instance) * File-testing:: (instance)  -File: gst-base.info, Node: File class-C functions, Next: File class-file name management, Up: File +File: gst-base.info, Node: File class-C functions, Next: File class-file operations, Up: File -1.71.1 File class: C functions +1.72.1 File class: C functions ------------------------------ errno @@ -9231,52 +9327,9 @@  -File: gst-base.info, Node: File class-file name management, Next: File class-file operations, Prev: File class-C functions, Up: File - -1.71.2 File class: file name management ---------------------------------------- - -extensionFor: aString - Answer the extension of a file named `aString'. Note: the - extension includes an initial dot. - -fullNameFor: aString - Answer the full path to a file called `aString', resolving the `.' - and `..' directory entries, and answer the result. `/..' is the - same as '/'. - -pathFor: aString - Determine the path of the name of a file called `aString', and - answer the result. With the exception of the root directory, the - final slash is stripped. - -pathFor: aString ifNone: aBlock - Determine the path of the name of a file called `aString', and - answer the result. With the exception of the root directory, the - final slash is stripped. If there is no path, evaluate aBlock and - return the result. - -pathFrom: srcName to: destName - Answer the relative path to destName when the current directory is - srcName's directory. - -stripExtensionFrom: aString - Remove the extension from the name of a file called `aString', and - answer the result. - -stripFileNameFor: aString - Determine the path of the name of a file called `aString', and - answer the result as a directory name including the final slash. - -stripPathFrom: aString - Remove the path from the name of a file called `aString', and - answer the file name plus extension. - - - -File: gst-base.info, Node: File class-file operations, Next: File class-instance creation, Prev: File class-file name management, Up: File +File: gst-base.info, Node: File class-file operations, Next: File class-initialization, Prev: File class-C functions, Up: File -1.71.3 File class: file operations +1.72.2 File class: file operations ---------------------------------- checkError @@ -9305,24 +9358,34 @@  -File: gst-base.info, Node: File class-instance creation, Next: File class-reading system defaults, Prev: File class-file operations, Up: File +File: gst-base.info, Node: File class-initialization, Next: File class-instance creation, Prev: File class-file operations, Up: File + +1.72.3 File class: initialization +--------------------------------- + +initialize + Initialize the receiver's class variables + + + +File: gst-base.info, Node: File class-instance creation, Next: File class-reading system defaults, Prev: File class-initialization, Up: File -1.71.4 File class: instance creation +1.72.4 File class: instance creation ------------------------------------ name: aName - Answer a new file with the given path. The path is not validated - until some of the fields of the newly created objects are accessed + Answer a new file with the given path. The path is turned into an + absolute path. -on: aVFSHandler - Answer a new file with the given path. The handler that returns - the information is aVFSHandler +path: aString + Answer a new file with the given path. The path is not validated + until some of the fields of the newly created objects are accessed  File: gst-base.info, Node: File class-reading system defaults, Next: File class-testing, Prev: File class-instance creation, Up: File -1.71.5 File class: reading system defaults +1.72.5 File class: reading system defaults ------------------------------------------ executable @@ -9335,7 +9398,7 @@  File: gst-base.info, Node: File class-testing, Next: File-accessing, Prev: File class-reading system defaults, Up: File -1.71.6 File class: testing +1.72.6 File class: testing -------------------------- exists: fileName @@ -9357,27 +9420,35 @@  -File: gst-base.info, Node: File-accessing, Next: File-file name management, Prev: File class-testing, Up: File +File: gst-base.info, Node: File-accessing, Next: File-basic, Prev: File class-testing, Up: File -1.71.7 File: accessing +1.72.7 File: accessing ---------------------- +asString + Answer the name of the file identified by the receiver + +at: aString + Answer a File or Directory object as appropriate for a file named + 'aName' in the directory represented by the receiver. + creationTime Answer the creation time of the file identified by the receiver. On some operating systems, this could actually be the last change time (the `last change time' has to do with permissions, ownership and the like). -lastAccessTime - Answer the last access time of the file identified by the receiver +isDirectory + Answer whether the file is a directory. -lastAccessTime: aDateTime - Update the last access time of the file corresponding to the - receiver, to be aDateTime. +isSocket + Answer whether the file is an AF_UNIX socket. -lastAccessTime: accessDateTime lastModifyTime: modifyDateTime - Update the timestamps of the file corresponding to the receiver, - to be accessDateTime and modifyDateTime. +isSymbolicLink + Answer whether the file is a symbolic link. + +lastAccessTime + Answer the last access time of the file identified by the receiver lastChangeTime Answer the last change time of the file identified by the receiver @@ -9389,10 +9460,6 @@ Answer the last modify time of the file identified by the receiver (the `last modify time' has to do with the actual file contents). -lastModifyTime: aDateTime - Update the last modification timestamp of the file corresponding - to the receiver, to be aDateTime. - mode Answer the permission bits for the file identified by the receiver @@ -9403,6 +9470,9 @@ name Answer the name of the file identified by the receiver +pathTo: destName + Compute the relative path from the receiver to destName. + refresh Refresh the statistics for the receiver @@ -9411,158 +9481,132 @@  -File: gst-base.info, Node: File-file name management, Next: File-file operations, Prev: File-accessing, Up: File +File: gst-base.info, Node: File-basic, Next: File-directory operations, Prev: File-accessing, Up: File -1.71.8 File: file name management ---------------------------------- +1.72.8 File: basic +------------------ -directory - Answer the Directory object for the receiver's path += aFile + Answer whether the receiver represents the same file as the + receiver. -extension - Answer the extension of the receiver +hash + Answer a hash value for the receiver. -fullName - Answer the full name of the receiver, resolving the `.' and `..' - directory entries, and answer the result. Answer nil if the name - is invalid (such as '/usr/../../badname') -path - Answer the path (if any) of the receiver + +File: gst-base.info, Node: File-directory operations, Next: File-file name management, Prev: File-basic, Up: File -stripExtension - Answer the path (if any) and file name of the receiver +1.72.9 File: directory operations +--------------------------------- + +createDirectories + Create the receiver as a directory, together with all its parents. -stripFileName - Answer the path of the receiver, always including a directory name - (possibly `.') and the final directory separator +createDirectory + Create the receiver as a directory. -stripPath - Answer the file name and extension (if any) of the receiver +namesDo: aBlock + Evaluate aBlock once for each file in the directory represented by + the receiver, passing its name. aBlock should not return.  -File: gst-base.info, Node: File-file operations, Next: File-printing, Prev: File-file name management, Up: File +File: gst-base.info, Node: File-file name management, Next: File-file operations, Prev: File-directory operations, Up: File -1.71.9 File: file operations ----------------------------- +1.72.10 File: file name management +---------------------------------- -contents - Open a read-only FileStream on the receiver, read its contents, - close the stream and answer the contents +full + Answer the full name of the receiver, resolving the `.' and `..' + directory entries, and answer the result. Answer nil if the name + is invalid (such as '/usr/../../badname') -open: mode - Open the receiver in the given mode (as answered by FileStream's - class constant methods) -open: mode ifFail: aBlock - Open the receiver in the given mode (as answered by FileStream's - class constant methods). Upon failure, evaluate aBlock. + +File: gst-base.info, Node: File-file operations, Next: File-still unclassified, Prev: File-file name management, Up: File -openDescriptor: mode - Open the receiver in the given mode (as answered by FileStream's - class constant methods) +1.72.11 File: file operations +----------------------------- -openDescriptor: mode ifFail: aBlock +lastAccessTime: accessDateTime lastModifyTime: modifyDateTime + Set the receiver's timestamps to be accessDateTime and + modifyDateTime. + +open: class mode: mode ifFail: aBlock Open the receiver in the given mode (as answered by FileStream's - class constant methods). Upon failure, evaluate aBlock. + class constant methods) -pathFrom: dirName +pathFrom: dir Compute the relative path from the directory dirName to the receiver -readStream - Open a read-only FileStream on the receiver - remove - Remove the file identified by the receiver + Remove the file with the given path name -renameTo: newName - Rename the file identified by the receiver to newName +renameTo: newFileName + Rename the file with the given path name to newFileName symlinkAs: destName Create destName as a symbolic link of the receiver. The appropriate relative path is computed automatically. symlinkFrom: srcName - Create the receiver as a symbolic link from srcName (relative to - the path of the receiver). - -touch - Update the timestamp of the file corresponding to the receiver. - -withReadStreamDo: aBlock - Invoke aBlock with a reading stream open on me, closing it when - the dynamic extent of aBlock ends. - -withWriteStreamDo: aBlock - Invoke aBlock with a writing stream open on me, closing it when - the dynamic extent of aBlock ends. - -writeStream - Open a write-only FileStream on the receiver + Create the receiver as a symlink from path destName  -File: gst-base.info, Node: File-printing, Next: File-testing, Prev: File-file operations, Up: File - -1.71.10 File: printing ----------------------- +File: gst-base.info, Node: File-still unclassified, Next: File-testing, Prev: File-file operations, Up: File -displayOn: aStream - Print a representation of the receiver on aStream. +1.72.12 File: still unclassified +-------------------------------- -printOn: aStream - Print a representation of the receiver on aStream. +, aName + Answer an object of the same kind as the receiver, whose name is + suffixed with aName.  -File: gst-base.info, Node: File-testing, Prev: File-printing, Up: File +File: gst-base.info, Node: File-testing, Prev: File-still unclassified, Up: File -1.71.11 File: testing +1.72.13 File: testing --------------------- exists Answer whether a file with the name contained in the receiver does exist. +isAbsolute + Answer whether the receiver identifies an absolute path. + isAccessible Answer whether a directory with the name contained in the receiver - does exist and can be accessed - -isDirectory - Answer whether a file with the name contained in the receiver does - exist and identifies a directory. + does exist and is accessible isExecutable Answer whether a file with the name contained in the receiver does exist and is executable -isFile - Answer whether a file with the name contained in the receiver does - exist and does not identify a directory. +isFileSystemPath + Answer whether the receiver corresponds to a real filesystem path. isReadable Answer whether a file with the name contained in the receiver does exist and is readable -isSymbolicLink - Answer whether a file with the name contained in the receiver does - exist and does not identify a directory. - isWriteable Answer whether a file with the name contained in the receiver does exist and is writeable  -File: gst-base.info, Node: FileDescriptor, Next: FileSegment, Prev: File, Up: Base classes +File: gst-base.info, Node: FileDescriptor, Next: FilePath, Prev: File, Up: Base classes -1.72 FileDescriptor +1.73 FileDescriptor =================== Defined in namespace Smalltalk -Superclass: ByteStream +Superclass: Stream Category: Streams-Files My instances are what conventional programmers think of as files. My instance creation methods accept the name of a disk file (or @@ -9579,18 +9623,21 @@ * FileDescriptor class-still unclassified:: (class) * FileDescriptor-accessing:: (instance) * FileDescriptor-basic:: (instance) +* FileDescriptor-binary I/O:: (instance) * FileDescriptor-built ins:: (instance) * FileDescriptor-class type methods:: (instance) * FileDescriptor-initialize-release:: (instance) * FileDescriptor-low-level access:: (instance) * FileDescriptor-overriding inherited methods:: (instance) +* FileDescriptor-polymorphism:: (instance) +* FileDescriptor-positioning:: (instance) * FileDescriptor-printing:: (instance) * FileDescriptor-testing:: (instance)  File: gst-base.info, Node: FileDescriptor class-initialization, Next: FileDescriptor class-instance creation, Up: FileDescriptor -1.72.1 FileDescriptor class: initialization +1.73.1 FileDescriptor class: initialization ------------------------------------------- initialize @@ -9603,7 +9650,7 @@  File: gst-base.info, Node: FileDescriptor class-instance creation, Next: FileDescriptor class-still unclassified, Prev: FileDescriptor class-initialization, Up: FileDescriptor -1.72.2 FileDescriptor class: instance creation +1.73.2 FileDescriptor class: instance creation ---------------------------------------------- append @@ -9708,7 +9755,7 @@  File: gst-base.info, Node: FileDescriptor class-still unclassified, Next: FileDescriptor-accessing, Prev: FileDescriptor class-instance creation, Up: FileDescriptor -1.72.3 FileDescriptor class: still unclassified +1.73.3 FileDescriptor class: still unclassified ----------------------------------------------- open: fileName mode: fileMode @@ -9729,7 +9776,7 @@  File: gst-base.info, Node: FileDescriptor-accessing, Next: FileDescriptor-basic, Prev: FileDescriptor class-still unclassified, Up: FileDescriptor -1.72.4 FileDescriptor: accessing +1.73.4 FileDescriptor: accessing -------------------------------- canRead @@ -9753,9 +9800,16 @@ fd Return the OS file descriptor of the file +file + Return the name of the file + isOpen Answer whether the file is still open +isPeerAlive + Present for compatibility with sockets. For files, it answers + whether the file is still open + isPipe Answer whether the file is a pipe or an actual disk file @@ -9768,68 +9822,3 @@ other Processes to run. - -File: gst-base.info, Node: FileDescriptor-basic, Next: FileDescriptor-built ins, Prev: FileDescriptor-accessing, Up: FileDescriptor - -1.72.5 FileDescriptor: basic ----------------------------- - -checkError - Perform error checking. By default, we call File - class>>#checkError. - -close - Close the file - -contents - Answer the whole contents of the file - -copyFrom: from to: to - Answer the contents of the file between the two given positions - -finalize - Close the file if it is still open by the time the object becomes - garbage. - -invalidate - Invalidate a file descriptor - -next - Return the next character in the file, or nil at eof - -nextByte - Return the next byte in the file, or nil at eof - -nextPut: aCharacter - Store aCharacter on the file - -nextPutByte: anInteger - Store the byte, anInteger, on the file - -nextPutByteArray: aByteArray - Store aByteArray on the file - -peek - Returns the next element of the stream without moving the pointer. - Returns nil when at end of stream. - -position - Answer the zero-based position from the start of the file - -position: n - Set the file pointer to the zero-based position n - -reset - Reset the stream to its beginning - -shutdown - Close the transmission side of a full-duplex connection. This is - useful on read-write pipes. - -size - Return the current size of the file, in bytes - -truncate - Truncate the file at the current position - - diff -rNu smalltalk-3.0.3/doc/gst-base.info-2 smalltalk-3.0.4/doc/gst-base.info-2 --- smalltalk-3.0.3/doc/gst-base.info-2 2008-05-14 12:35:05.000000000 +0200 +++ smalltalk-3.0.4/doc/gst-base.info-2 2008-08-09 15:31:03.000000000 +0200 @@ -14,11 +14,149 @@ in the section entitled "GNU Free Documentation License".  -File: gst-base.info, Node: FileDescriptor-built ins, Next: FileDescriptor-class type methods, Prev: FileDescriptor-basic, Up: FileDescriptor +File: gst-base.info, Node: FileDescriptor-basic, Next: FileDescriptor-binary I/O, Prev: FileDescriptor-accessing, Up: FileDescriptor -1.72.6 FileDescriptor: built ins +1.73.5 FileDescriptor: basic +---------------------------- + +checkError + Perform error checking. By default, we call File + class>>#checkError. + +close + Close the file + +contents + Answer the whole contents of the file + +copyFrom: from to: to + Answer the contents of the file between the two given positions + +finalize + Close the file if it is still open by the time the object becomes + garbage. + +invalidate + Invalidate a file descriptor + +next + Return the next character in the file, or nil at eof + +nextByte + Return the next byte in the file, or nil at eof + +nextPut: aCharacter + Store aCharacter on the file + +nextPutByteArray: aByteArray + Store aByteArray on the file + +peek + Returns the next element of the stream without moving the pointer. + Returns nil when at end of stream. + +peekFor: anObject + Returns whether the next element of the stream is equal to + anObject, without moving the pointer if it is not. + +position + Answer the zero-based position from the start of the file + +position: n + Set the file pointer to the zero-based position n + +reset + Reset the stream to its beginning + +shutdown + Close the transmission side of a full-duplex connection. This is + useful on read-write pipes. + +size + Return the current size of the file, in bytes + +truncate + Truncate the file at the current position + + + +File: gst-base.info, Node: FileDescriptor-binary I/O, Next: FileDescriptor-built ins, Prev: FileDescriptor-basic, Up: FileDescriptor + +1.73.6 FileDescriptor: binary I/O +--------------------------------- + +nextByteArray: numBytes + Return the next numBytes bytes in the byte array + +nextDouble + Return the next 64-bit float in the byte array + +nextFloat + Return the next 32-bit float in the byte array + +nextLong + Return the next 4 bytes in the byte array, interpreted as a 32 bit + signed int + +nextLongLong + Return the next 8 bytes in the byte array, interpreted as a 64 bit + signed int + +nextPutByte: anInteger + Store anInteger (range: -128..255) on the byte array + +nextPutDouble: aDouble + Store aDouble as a 64-bit float in the byte array + +nextPutFloat: aFloat + Return the next 32-bit float in the byte array + +nextPutInt64: anInteger + Store anInteger (range: -2^63..2^64-1) on the byte array as 4 bytes + +nextPutLong: anInteger + Store anInteger (range: -2^31..2^32-1) on the byte array as 4 bytes + +nextPutShort: anInteger + Store anInteger (range: -32768..65535) on the byte array as 2 bytes + +nextShort + Return the next 2 bytes in the byte array, interpreted as a 16 bit + signed int + +nextSignedByte + Return the next byte in the byte array, interpreted as a 8 bit + signed number + +nextUint64 + Return the next 8 bytes in the byte array, interpreted as a 64 bit + unsigned int + +nextUlong + Return the next 4 bytes in the byte array, interpreted as a 32 bit + unsigned int + +nextUshort + Return the next 2 bytes in the byte array, interpreted as a 16 bit + unsigned int + + + +File: gst-base.info, Node: FileDescriptor-built ins, Next: FileDescriptor-class type methods, Prev: FileDescriptor-binary I/O, Up: FileDescriptor + +1.73.7 FileDescriptor: built ins -------------------------------- +fileIn + File in the contents of the receiver. During a file in operation, + global variables (starting with an uppercase letter) that are not + declared don't yield an `unknown variable' error. Instead, they + are defined as nil in the `Undeclared' dictionary (a global + variable residing in Smalltalk). As soon as you add the variable + to a namespace (for example by creating a class) the Association + will be removed from Undeclared and reused in the namespace, so + that the old references will automagically point to the new value. + fileOp: ioFuncIndex Private - Used to limit the number of primitives used by FileStreams @@ -63,7 +201,7 @@  File: gst-base.info, Node: FileDescriptor-class type methods, Next: FileDescriptor-initialize-release, Prev: FileDescriptor-built ins, Up: FileDescriptor -1.72.7 FileDescriptor: class type methods +1.73.8 FileDescriptor: class type methods ----------------------------------------- isBinary @@ -79,7 +217,7 @@  File: gst-base.info, Node: FileDescriptor-initialize-release, Next: FileDescriptor-low-level access, Prev: FileDescriptor-class type methods, Up: FileDescriptor -1.72.8 FileDescriptor: initialize-release +1.73.9 FileDescriptor: initialize-release ----------------------------------------- addToBeFinalized @@ -88,9 +226,6 @@ initialize Initialize the receiver's instance variables -newBuffer - Private - Answer a String to be used as the receiver's buffer - readStream Answer myself, or an alternate stream coerced for reading. @@ -101,57 +236,28 @@  File: gst-base.info, Node: FileDescriptor-low-level access, Next: FileDescriptor-overriding inherited methods, Prev: FileDescriptor-initialize-release, Up: FileDescriptor -1.72.9 FileDescriptor: low-level access ---------------------------------------- - -nextHunk - Answer the next buffers worth of stuff in the Stream represented - by the receiver. Do at most one actual input operation. - -read: byteArray - Ignoring any buffering, try to fill byteArray with the contents of - the file +1.73.10 FileDescriptor: low-level access +---------------------------------------- -read: byteArray from: position to: end - Ignoring any buffering, try to fill the given range of byteArray - with the contents of the file +next: n putAll: aCollection startingAt: position + Put the characters in the supplied range of aCollection in the file -read: byteArray numBytes: anInteger - Ignoring any buffering, try to fill anInteger bytes of byteArray +nextAvailable: n into: aCollection startingAt: position + Ignoring any buffering, try to fill the given range of aCollection with the contents of the file -write: byteArray - Ignoring any buffering, try to write the contents of byteArray in - the file - -write: byteArray from: position to: end - Ignoring any buffering, try to write to the file the given range - of byteArray, starting at the position-th element and ending at - the end-th. - -write: byteArray numBytes: anInteger - Ignoring any buffering, try to write to the file the first - anInteger bytes of byteArray -  -File: gst-base.info, Node: FileDescriptor-overriding inherited methods, Next: FileDescriptor-printing, Prev: FileDescriptor-low-level access, Up: FileDescriptor +File: gst-base.info, Node: FileDescriptor-overriding inherited methods, Next: FileDescriptor-polymorphism, Prev: FileDescriptor-low-level access, Up: FileDescriptor -1.72.10 FileDescriptor: overriding inherited methods +1.73.11 FileDescriptor: overriding inherited methods ---------------------------------------------------- isEmpty Answer whether the receiver is empty -next: anInteger - Return the next 'anInteger' characters from the stream, as a - String. - -next: n putAll: aCollection startingAt: position - Put the characters in the supplied range of aCollection in the file - -nextByteArray: anInteger - Return the next 'anInteger' bytes from the stream, as a ByteArray. +nextPutAllOn: aStream + Put all the characters of the receiver in aStream. reverseContents Return the contents of the file from the last byte to the first @@ -164,9 +270,29 @@  -File: gst-base.info, Node: FileDescriptor-printing, Next: FileDescriptor-testing, Prev: FileDescriptor-overriding inherited methods, Up: FileDescriptor +File: gst-base.info, Node: FileDescriptor-polymorphism, Next: FileDescriptor-positioning, Prev: FileDescriptor-overriding inherited methods, Up: FileDescriptor + +1.73.12 FileDescriptor: polymorphism +------------------------------------ + +pastEnd + The end of the stream has been reached. Signal a Notification. + + + +File: gst-base.info, Node: FileDescriptor-positioning, Next: FileDescriptor-printing, Prev: FileDescriptor-polymorphism, Up: FileDescriptor -1.72.11 FileDescriptor: printing +1.73.13 FileDescriptor: positioning +----------------------------------- + +isPositionable + Answer true if the stream supports moving backwards with #skip:. + + + +File: gst-base.info, Node: FileDescriptor-printing, Next: FileDescriptor-testing, Prev: FileDescriptor-positioning, Up: FileDescriptor + +1.73.14 FileDescriptor: printing -------------------------------- printOn: aStream @@ -176,7 +302,7 @@  File: gst-base.info, Node: FileDescriptor-testing, Prev: FileDescriptor-printing, Up: FileDescriptor -1.72.12 FileDescriptor: testing +1.73.15 FileDescriptor: testing ------------------------------- atEnd @@ -184,916 +310,1188 @@  -File: gst-base.info, Node: FileSegment, Next: FileStream, Prev: FileDescriptor, Up: Base classes +File: gst-base.info, Node: FilePath, Next: FileSegment, Prev: FileDescriptor, Up: Base classes -1.73 FileSegment -================ +1.74 FilePath +============= Defined in namespace Smalltalk Superclass: Object -Category: Language-Implementation - My instances represent sections of files. I am primarily used by - the compiler to record source code locations. I am not a part of - the normal Smalltalk-80 kernel; I am specific to the GNU Smalltalk - implementation. +Category: Streams-Files + I expose the syntax of file names, including paths. I know how to + manipulate such a path by splitting it into its components. In + addition, I expose information about files (both real and virtual) + such as their size and timestamps. * Menu: -* FileSegment class-basic:: (class) -* FileSegment class-installing:: (class) -* FileSegment-basic:: (instance) -* FileSegment-equality:: (instance) +* FilePath class-file name management:: (class) +* FilePath class-still unclassified:: (class) +* FilePath-accessing:: (instance) +* FilePath-converting:: (instance) +* FilePath-decoration:: (instance) +* FilePath-directory operations:: (instance) +* FilePath-enumerating:: (instance) +* FilePath-file name management:: (instance) +* FilePath-file operations:: (instance) +* FilePath-printing:: (instance) +* FilePath-still unclassified:: (instance) +* FilePath-testing:: (instance) +* FilePath-virtual filesystems:: (instance)  -File: gst-base.info, Node: FileSegment class-basic, Next: FileSegment class-installing, Up: FileSegment +File: gst-base.info, Node: FilePath class-file name management, Next: FilePath class-still unclassified, Up: FilePath -1.73.1 FileSegment class: basic -------------------------------- +1.74.1 FilePath class: file name management +------------------------------------------- -on: aFile startingAt: startPos for: sizeInteger - Create a new FileSegment referring to the contents of the given - file, from the startPos-th byte and for sizeInteger bytes +append: fileName to: directory + Answer the name of a file named `fileName' which resides in a + directory named `directory'. +extensionFor: aString + Answer the extension of a file named `aString'. Note: the + extension includes an initial dot. - -File: gst-base.info, Node: FileSegment class-installing, Next: FileSegment-basic, Prev: FileSegment class-basic, Up: FileSegment +fullNameFor: aString + Answer the full path to a file called `aString', resolving the `.' + and `..' directory entries, and answer the result. `/..' is the + same as '/'. -1.73.2 FileSegment class: installing ------------------------------------- +pathFor: aString + Determine the path of the name of a file called `aString', and + answer the result. With the exception of the root directory, the + final slash is stripped. -relocateFrom: startPath to: endPath - Remove startPath from all paths that start with it, and replace it - with endPath. Needed to support $(DESTDIR) when installing +pathFor: aString ifNone: aBlock + Determine the path of the name of a file called `aString', and + answer the result. With the exception of the root directory, the + final slash is stripped. If there is no path, evaluate aBlock and + return the result. +pathFrom: srcName to: destName + Answer the relative path to destName when the current directory is + srcName's directory. - -File: gst-base.info, Node: FileSegment-basic, Next: FileSegment-equality, Prev: FileSegment class-installing, Up: FileSegment +stripExtensionFrom: aString + Remove the extension from the name of a file called `aString', and + answer the result. -1.73.3 FileSegment: basic -------------------------- +stripFileNameFor: aString + Determine the path of the name of a file called `aString', and + answer the result as a directory name including the final slash. -asString - Answer a String containing the required segment of the file +stripPathFrom: aString + Remove the path from the name of a file called `aString', and + answer the file name plus extension. -copyFrom: from to: to - Answer a String containing the given subsegment of the file. As - for streams, from and to are 0-based. -fileName - Answer the name of the file containing the segment + +File: gst-base.info, Node: FilePath class-still unclassified, Next: FilePath-accessing, Prev: FilePath class-file name management, Up: FilePath -filePos - Answer the position in the file where the segment starts +1.74.2 FilePath class: still unclassified +----------------------------------------- -relocateFrom: startPath to: endPath map: map - If the path starts with startPath, remove that part of the path - and replace it with endPath. map is a Dictionary that is used so - that equal filenames stay equal, without increasing the amount of - memory that the image uses. +isAbsolute: aString + Answer whether aString is an absolute ptah. -size - Answer the length of the segment -withFileDo: aBlock - Evaluate aBlock passing it the FileStream in which the segment - identified by the receiver is stored + +File: gst-base.info, Node: FilePath-accessing, Next: FilePath-converting, Prev: FilePath class-still unclassified, Up: FilePath +1.74.3 FilePath: accessing +-------------------------- - -File: gst-base.info, Node: FileSegment-equality, Prev: FileSegment-basic, Up: FileSegment +at: aName + Answer a File or Directory object as appropriate for a file named + 'aName' in the directory represented by the receiver. + +creationTime + Answer the creation time of the file identified by the receiver. + On some operating systems, this could actually be the last change + time (the `last change time' has to do with permissions, ownership + and the like). + +includes: aName + Answer whether a file named `aName' exists in the directory + represented by the receiver. + +lastAccessTime + Answer the last access time of the file identified by the receiver + +lastAccessTime: aDateTime + Update the last access time of the file corresponding to the + receiver, to be aDateTime. + +lastAccessTime: accessDateTime lastModifyTime: modifyDateTime + Update the timestamps of the file corresponding to the receiver, + to be accessDateTime and modifyDateTime. + +lastChangeTime + Answer the last change time of the file identified by the receiver + (the `last change time' has to do with permissions, ownership and + the like). On some operating systems, this could actually be the + file creation time. + +lastModifyTime + Answer the last modify time of the file identified by the receiver + (the `last modify time' has to do with the actual file contents). + +lastModifyTime: aDateTime + Update the last modification timestamp of the file corresponding + to the receiver, to be aDateTime. + +mode + Answer the permission bits for the file identified by the receiver + +mode: anInteger + Set the permission bits for the file identified by the receiver to + be anInteger. -1.73.4 FileSegment: equality ----------------------------- +pathTo: destName + Compute the relative path from the receiver to destName. -= aFileSegment - Answer whether the receiver and aFileSegment are equal. +refresh + Refresh the statistics for the receiver -hash - Answer an hash value for the receiver. +size + Answer the size of the file identified by the receiver  -File: gst-base.info, Node: FileStream, Next: Float, Prev: FileSegment, Up: Base classes - -1.74 FileStream -=============== +File: gst-base.info, Node: FilePath-converting, Next: FilePath-decoration, Prev: FilePath-accessing, Up: FilePath -Defined in namespace Smalltalk -Superclass: FileDescriptor -Category: Streams-Files - My instances are what conventional programmers think of as files. - My instance creation methods accept the name of a disk file (or - any named file object, such as /dev/rmt0 on UNIX or MTA0: on VMS). +1.74.4 FilePath: converting +--------------------------- -* Menu: +asFile + Answer the receiver. -* FileStream class-file-in:: (class) -* FileStream class-standard streams:: (class) -* FileStream-basic:: (instance) -* FileStream-buffering:: (instance) -* FileStream-compiling:: (instance) -* FileStream-overriding inherited methods:: (instance) -* FileStream-testing:: (instance)  -File: gst-base.info, Node: FileStream class-file-in, Next: FileStream class-standard streams, Up: FileStream +File: gst-base.info, Node: FilePath-decoration, Next: FilePath-directory operations, Prev: FilePath-converting, Up: FilePath -1.74.1 FileStream class: file-in --------------------------------- +1.74.5 FilePath: decoration +--------------------------- -fileIn: aFileName - File in the aFileName file. During a file in operation, global - variables (starting with an uppercase letter) that are not - declared yet don't yield an `unknown variable' error. Instead, - they are defined as nil in the `Undeclared' dictionary (a global - variable residing in Smalltalk). As soon as you add the variable - to a namespace (for example by creating a class) the Association - will be removed from Undeclared and reused in the namespace, so - that the old references will automagically point to the new value. +all + Return a decorator of the receiver that will provide recursive + descent into directories for iteration methods. -fileIn: aFileName ifMissing: aSymbol - Conditionally do a file in, only if the key (often a class) - specified by 'aSymbol' is not present in the Smalltalk system - dictionary already. During a file in operation, global variables - (starting with an uppercase letter) that are not declared don't - yield an `unknown variable' error. Instead, they are defined as - nil in the `Undeclared' dictionary (a global variable residing in - Smalltalk). As soon as you add the variable to a namespace (for - example by creating a class) the Association will be removed from - Undeclared and reused in the namespace, so that the old references - will automagically point to the new value. -fileIn: aFileName ifTrue: aBoolean - Conditionally do a file in, only if the supplied boolean is true. - During a file in operation, global variables (starting with an - uppercase letter) that are not declared don't yield an `unknown - variable' error. Instead, they are defined as nil in the - `Undeclared' dictionary (a global variable residing in Smalltalk). - As soon as you add the variable to a namespace (for example by - creating a class) the Association will be removed from Undeclared - and reused in the namespace, so that the old references will - automagically point to the new value. + +File: gst-base.info, Node: FilePath-directory operations, Next: FilePath-enumerating, Prev: FilePath-decoration, Up: FilePath -fileIn: aFileName line: lineInteger from: realFileName at: aCharPos - File in the aFileName file giving errors such as if it was loaded - from the given line, file name and starting position (instead of - 1). +1.74.6 FilePath: directory operations +------------------------------------- -generateMakefileOnto: aStream - Generate a make file for the file-ins since record was last set to - true. Store it on aStream +nameAt: aName + Answer a FilePath for a file named `aName' residing in the + directory represented by the receiver. -initialize - Private - Initialize the receiver's class variables -record: recordFlag - Set whether Smalltalk should record information about nested - file-ins. When recording is enabled, use #generateMakefileOnto: - to automatically generate a valid makefile for the intervening - file-ins. + +File: gst-base.info, Node: FilePath-enumerating, Next: FilePath-file name management, Prev: FilePath-directory operations, Up: FilePath -require: assoc - Conditionally do a file in from the value of assoc, only if the - key of assoc is not present in the Smalltalk system dictionary - already. During a file in operation, global variables (starting - with an uppercase letter) that are not declared don't yield an - `unknown variable' error. Instead, they are defined as nil in the - `Undeclared' dictionary (a global variable residing in Smalltalk). - As soon as you add the variable to a namespace (for example by - creating a class) the Association will be removed from Undeclared - and reused in the namespace, so that the old references will - automagically point to the new value. +1.74.7 FilePath: enumerating +---------------------------- -verbose: verboseFlag - Set whether Smalltalk should output debugging messages when filing - in +allFilesMatching: aPattern do: aBlock + Evaluate aBlock on the File objects that match aPattern (according + to String>>#match:) in the directory named by the receiver. + Recursively descend into directories. + +directories + Answer an Array with Directory objects for the subdirectories of + the directory represented by the receiver. +do: aBlock + Evaluate aBlock once for each file in the directory represented by + the receiver, passing its name. - -File: gst-base.info, Node: FileStream class-standard streams, Next: FileStream-basic, Prev: FileStream class-file-in, Up: FileStream +entries + Answer an Array with File or Directory objects for the contents of + the directory represented by the receiver. + +entryNames + Answer an Array with the names of the files in the directory + represented by the receiver. -1.74.2 FileStream class: standard streams ------------------------------------------ +files + Answer an Array with File objects for the contents of the directory + represented by the receiver. -stderr - Answer a FileStream that is attached the Smalltalk program's - standard error file handle, which can be used for error messages - and diagnostics issued by the program. +filesMatching: aPattern + Evaluate aBlock once for each file in the directory represented by + the receiver, passing a File or Directory object to aBlock. + Returns the *names* of the files for which aBlock returns true. + +filesMatching: aPattern do: block + Evaluate block on the File objects that match aPattern (according + to String>>#match:) in the directory named by the receiver. + +namesDo: aBlock + Evaluate aBlock once for each file in the directory represented by + the receiver, passing its name. + +namesMatching: aPattern do: block + Evaluate block on the file names that match aPattern (according to + String>>#match:) in the directory named by the receiver. -stdin - Answer a FileStream that is attached the Smalltalk program's - standard input file handle, which is the normal source of input - for the program. +reject: aBlock + Evaluate aBlock once for each file in the directory represented by + the receiver, passing a File or Directory object to aBlock. + Returns the *names* of the files for which aBlock returns true. -stdout - Answer a FileStream that is attached the Smalltalk program's - standard output file handle; this is used for normal output from - the program. +select: aBlock + Evaluate aBlock once for each file in the directory represented by + the receiver, passing a File or Directory object to aBlock. + Returns the *names* of the files for which aBlock returns true.  -File: gst-base.info, Node: FileStream-basic, Next: FileStream-buffering, Prev: FileStream class-standard streams, Up: FileStream - -1.74.3 FileStream: basic ------------------------- +File: gst-base.info, Node: FilePath-file name management, Next: FilePath-file operations, Prev: FilePath-enumerating, Up: FilePath -bufferStart - Private - Answer the offset from the start of the file - corresponding to the beginning of the read buffer. +1.74.8 FilePath: file name management +------------------------------------- -copyFrom: from to: to - Answer the contents of the file between the two given positions +directory + Answer the Directory object for the receiver's path -next - Return the next character in the file, or nil at eof +extension + Answer the extension of the receiver -nextByte - Return the next byte in the file, or nil at eof +full + Answer the full name of the receiver, resolving the `.' and `..' + directory entries, and answer the result. Answer nil if the name + is invalid (such as '/usr/../../badname') -nextPut: aCharacter - Store aCharacter on the file +name + Answer the full path to the receiver -peek - Return the next character in the file, or nil at eof. Don't - advance the file pointer. +parent + Answer the Directory object for the receiver's path -position - Answer the zero-based position from the start of the file +path + Answer the path (if any) of the receiver -position: n - Set the file pointer to the zero-based position n +stripExtension + Answer the path (if any) and file name of the receiver -size - Return the current size of the file, in bytes +stripFileName + Answer the path of the receiver, always including a directory name + (possibly `.') and the final directory separator -truncate - Truncate the file at the current position +stripPath + Answer the file name and extension (if any) of the receiver  -File: gst-base.info, Node: FileStream-buffering, Next: FileStream-compiling, Prev: FileStream-basic, Up: FileStream +File: gst-base.info, Node: FilePath-file operations, Next: FilePath-printing, Prev: FilePath-file name management, Up: FilePath -1.74.4 FileStream: buffering ----------------------------- +1.74.9 FilePath: file operations +-------------------------------- -bufferSize - Answer the file's current buffer +contents + Open a read-only FileStream on the receiver, read its contents, + close the stream and answer the contents -bufferSize: bufSize - Flush the file and set the buffer's size to bufSize +fileIn + File in the receiver -clean - Synchronize the file descriptor's state with the object's state. +open: mode + Open the receiver in the given mode (as answered by FileStream's + class constant methods) + +open: mode ifFail: aBlock + Open the receiver in the given mode (as answered by FileStream's + class constant methods). Upon failure, evaluate aBlock. + +open: class mode: mode ifFail: aBlock + Open the receiver in the given mode (as answered by FileStream's + class constant methods) + +openDescriptor: mode + Open the receiver in the given mode (as answered by FileStream's + class constant methods) + +openDescriptor: mode ifFail: aBlock + Open the receiver in the given mode (as answered by FileStream's + class constant methods). Upon failure, evaluate aBlock. -fill - Private - Fill the input buffer +pathFrom: dirName + Compute the relative path from the directory dirName to the + receiver -flush - Flush the output buffer. +readStream + Open a read-only FileStream on the receiver -newBuffer - Private - Answer a String to be used as the receiver's buffer +remove + Remove the file identified by the receiver -next: n bufferAll: aCollection startingAt: pos - Private - Assuming that the buffer has space for n characters, - store n characters of aCollection in the buffer, starting from the - pos-th. +renameTo: newName + Rename the file identified by the receiver to newName -next: anInteger into: answer - Private - Read up to anInteger bytes from the stream and store them - into answer. Return `answer' itself, possibly truncated if we - could not read the full amount of data. - -nextHunk - Answer the next buffers worth of stuff in the Stream represented - by the receiver. For n consecutive calls to this method, we do n - - 1 or n actual input operation. +symlinkAs: destName + Create destName as a symbolic link of the receiver. The + appropriate relative path is computed automatically. -pendingWrite - Answer whether the output buffer is full. +symlinkFrom: srcName + Create the receiver as a symbolic link from srcName (relative to + the path of the receiver). +touch + Update the timestamp of the file corresponding to the receiver. - -File: gst-base.info, Node: FileStream-compiling, Next: FileStream-overriding inherited methods, Prev: FileStream-buffering, Up: FileStream +withReadStreamDo: aBlock + Invoke aBlock with a reading stream open on me, closing it when + the dynamic extent of aBlock ends. -1.74.5 FileStream: compiling ----------------------------- +withWriteStreamDo: aBlock + Invoke aBlock with a writing stream open on me, closing it when + the dynamic extent of aBlock ends. -segmentFrom: startPos to: endPos - Answer an object that, when sent #asString, will yield the result - of sending `copyFrom: startPos to: endPos' to the receiver +writeStream + Open a write-only FileStream on the receiver  -File: gst-base.info, Node: FileStream-overriding inherited methods, Next: FileStream-testing, Prev: FileStream-compiling, Up: FileStream - -1.74.6 FileStream: overriding inherited methods ------------------------------------------------ +File: gst-base.info, Node: FilePath-printing, Next: FilePath-still unclassified, Prev: FilePath-file operations, Up: FilePath -next: anInteger - Return the next 'anInteger' characters from the stream, as a - String. - -next: n putAll: aCollection startingAt: pos - Write n values from aCollection, the first being at pos. +1.74.10 FilePath: printing +-------------------------- -nextByteArray: anInteger - Return the next 'anInteger' bytes from the stream, as a ByteArray. +displayOn: aStream + Print a representation of the receiver on aStream. -nextLine - Returns a collection of the same type that the stream accesses, - containing the next line up to the next new-line character. - Returns the entire rest of the stream's contents if no new-line - character is found. +printOn: aStream + Print a representation of the receiver on aStream.  -File: gst-base.info, Node: FileStream-testing, Prev: FileStream-overriding inherited methods, Up: FileStream +File: gst-base.info, Node: FilePath-still unclassified, Next: FilePath-testing, Prev: FilePath-printing, Up: FilePath -1.74.7 FileStream: testing --------------------------- +1.74.11 FilePath: still unclassified +------------------------------------ -atEnd - Answer whether data has come to an end +/ aName + Answer a File or Directory object as appropriate for a file named + 'aName' in the directory represented by the receiver.  -File: gst-base.info, Node: Float, Next: FloatD, Prev: FileStream, Up: Base classes +File: gst-base.info, Node: FilePath-testing, Next: FilePath-virtual filesystems, Prev: FilePath-still unclassified, Up: FilePath -1.75 Float -========== - -Defined in namespace Smalltalk -Superclass: Number -Category: Language-Data types - My instances represent floating point numbers that have arbitrary - precision. Besides the standard numerical operations, they provide - transcendental operations too. They implement IEEE-754 correctly - if the hardware supports it. - -* Menu: - -* Float class-byte-order dependancies:: (class) -* Float class-characterization:: (class) -* Float-arithmetic:: (instance) -* Float-basic:: (instance) -* Float-built ins:: (instance) -* Float-coercing:: (instance) -* Float-coercion:: (instance) -* Float-comparing:: (instance) -* Float-printing:: (instance) -* Float-storing:: (instance) -* Float-testing:: (instance) -* Float-testing functionality:: (instance) -* Float-transcendental operations:: (instance) +1.74.12 FilePath: testing +------------------------- - -File: gst-base.info, Node: Float class-byte-order dependancies, Next: Float class-characterization, Up: Float +exists + Answer whether a file with the name contained in the receiver does + exist. -1.75.1 Float class: byte-order dependancies -------------------------------------------- +isAbsolute + Answer whether the receiver identifies an absolute path. -signByte - Answer the byte of the receiver that contains the sign bit +isAccessible + Answer whether a directory with the name contained in the receiver + does exist and can be accessed +isDirectory + Answer whether a file with the name contained in the receiver does + exist and identifies a directory. - -File: gst-base.info, Node: Float class-characterization, Next: Float-arithmetic, Prev: Float class-byte-order dependancies, Up: Float +isExecutable + Answer whether a file with the name contained in the receiver does + exist and is executable -1.75.2 Float class: characterization ------------------------------------- +isFile + Answer whether a file with the name contained in the receiver does + exist and does not identify a directory. -denormalized - Answer whether instances of the receiver can be in denormalized - form. +isFileSystemPath + Answer whether the receiver corresponds to a real filesystem path. -e - Returns the value of e. Hope is that it is precise enough +isReadable + Answer whether a file with the name contained in the receiver does + exist and is readable -epsilon - Return the smallest Float x for which is 1 + x ~= 1 +isRelative + Answer whether the receiver identifies a relative path. -fmin - Return the smallest Float that is > 0. +isSymbolicLink + Answer whether a file with the name contained in the receiver does + exist and identifies a symbolic link. -fminDenormalized - Return the smallest Float that is > 0 if denormalized values are - supported, else return 0. +isWriteable + Answer whether a file with the name contained in the receiver does + exist and is writeable -ln10 - Returns the value of ln 10. Hope is that it is precise enough -log10Base2 - Returns the value of log2 10. Hope is that it is precise enough + +File: gst-base.info, Node: FilePath-virtual filesystems, Prev: FilePath-testing, Up: FilePath -pi - Returns the value of pi. Hope is that it is precise enough +1.74.13 FilePath: virtual filesystems +------------------------------------- -radix - Answer the base in which computations between instances of the - receiver are made. This should be 2 on about every known - computer, so GNU Smalltalk always answers 2. +zip + Not commented.  -File: gst-base.info, Node: Float-arithmetic, Next: Float-basic, Prev: Float class-characterization, Up: Float +File: gst-base.info, Node: FileSegment, Next: FileStream, Prev: FilePath, Up: Base classes -1.75.3 Float: arithmetic ------------------------- - -integerPart - Return the receiver's integer part +1.75 FileSegment +================ -negated - Return the negation of the receiver. Unlike 0-self, this converts - correctly signed zeros. +Defined in namespace Smalltalk +Superclass: Object +Category: Language-Implementation + My instances represent sections of files. I am primarily used by + the compiler to record source code locations. I am not a part of + the normal Smalltalk-80 kernel; I am specific to the GNU Smalltalk + implementation. -raisedToInteger: anInteger - Return self raised to the anInteger-th power +* Menu: +* FileSegment class-basic:: (class) +* FileSegment class-installing:: (class) +* FileSegment-basic:: (instance) +* FileSegment-equality:: (instance) +* FileSegment-printing:: (instance)  -File: gst-base.info, Node: Float-basic, Next: Float-built ins, Prev: Float-arithmetic, Up: Float +File: gst-base.info, Node: FileSegment class-basic, Next: FileSegment class-installing, Up: FileSegment -1.75.4 Float: basic -------------------- +1.75.1 FileSegment class: basic +------------------------------- -hash - Answer an hash value for the receiver +on: aFile startingAt: startPos for: sizeInteger + Create a new FileSegment referring to the contents of the given + file, from the startPos-th byte and for sizeInteger bytes. Note + that FileSegments should always be created with full paths because + relative paths are interpreted to be relative to the kernel + directory.  -File: gst-base.info, Node: Float-built ins, Next: Float-coercing, Prev: Float-basic, Up: Float - -1.75.5 Float: built ins ------------------------ +File: gst-base.info, Node: FileSegment class-installing, Next: FileSegment-basic, Prev: FileSegment class-basic, Up: FileSegment -arcCos - Answer the arc-cosine of the receiver +1.75.2 FileSegment class: installing +------------------------------------ -arcSin - Answer the arc-sine of the receiver +relocate + Remove the kernel path from all paths that start with it. Needed + to support $(DESTDIR) and relocatable installation. -arcTan - Answer the arc-tangent of the receiver -ceiling - Answer the integer part of the receiver, truncated towards - +infinity + +File: gst-base.info, Node: FileSegment-basic, Next: FileSegment-equality, Prev: FileSegment class-installing, Up: FileSegment -cos - Answer the cosine of the receiver +1.75.3 FileSegment: basic +------------------------- -exp - Answer 'e' (2.718281828459...) raised to the receiver +asString + Answer a String containing the required segment of the file -floor - Answer the integer part of the receiver, truncated towards - -infinity +copyFrom: from to: to + Answer a String containing the given subsegment of the file. As + for streams, from and to are 0-based. -ln - Answer the logarithm of the receiver in base 'e' - (2.718281828459...) +file + Answer the File object for the file containing the segment -primHash - Private - Answer an hash value for the receiver +fileName + Answer the name of the file containing the segment -raisedTo: aNumber - Answer the receiver raised to its aNumber power +filePos + Answer the position in the file where the segment starts -sin - Answer the sine of the receiver +relocateFrom: startPath map: map + If the path starts with startPath, remove that part of the path. + map is a Dictionary that is used so that equal filenames stay + equal, without increasing the amount of memory that the image uses. -sqrt - Answer the square root of the receiver +size + Answer the length of the segment -tan - Answer the tangent of the receiver +withFileDo: aBlock + Evaluate aBlock passing it the FileStream in which the segment + identified by the receiver is stored  -File: gst-base.info, Node: Float-coercing, Next: Float-coercion, Prev: Float-built ins, Up: Float - -1.75.6 Float: coercing ----------------------- +File: gst-base.info, Node: FileSegment-equality, Next: FileSegment-printing, Prev: FileSegment-basic, Up: FileSegment -asExactFraction - Convert the receiver into a fraction with optimal approximation, - but with usually huge terms. +1.75.4 FileSegment: equality +---------------------------- -asFraction - Convert the receiver into a fraction with a good (but undefined) - approximation += aFileSegment + Answer whether the receiver and aFileSegment are equal. -truncated - Convert the receiver to an Integer. Only used for LargeIntegers, - there are primitives for the other cases. +hash + Answer an hash value for the receiver.  -File: gst-base.info, Node: Float-coercion, Next: Float-comparing, Prev: Float-coercing, Up: Float +File: gst-base.info, Node: FileSegment-printing, Prev: FileSegment-equality, Up: FileSegment -1.75.7 Float: coercion ----------------------- +1.75.5 FileSegment: printing +---------------------------- -asCNumber - Convert the receiver to a kind of number that is understood by the - C call-out mechanism. +printedFileName + Answer a printed representation of the file containing the segment. + While introducing some ambiguity, this representation is compact + eliminates the path for kernel files, and produces a relative path + from the current working directory for other files.  -File: gst-base.info, Node: Float-comparing, Next: Float-printing, Prev: Float-coercion, Up: Float - -1.75.8 Float: comparing ------------------------ +File: gst-base.info, Node: FileStream, Next: Float, Prev: FileSegment, Up: Base classes -max: aNumber - Answer the maximum between the receiver and aNumber. Redefine in - subclasses if necessary to ensure that if either self or aNumber - is a NaN, it is always answered. +1.76 FileStream +=============== -min: aNumber - Answer the minimum between the receiver and aNumber. Redefine in - subclasses if necessary to ensure that if either self or aNumber - is a NaN, it is always answered. +Defined in namespace Smalltalk +Superclass: FileDescriptor +Category: Streams-Files + My instances are what conventional programmers think of as files. + My instance creation methods accept the name of a disk file (or + any named file object, such as /dev/rmt0 on UNIX or MTA0: on VMS). -withSignOf: aNumber - Answer the receiver, with its sign possibly changed to match that - of aNumber. +* Menu: +* FileStream class-file-in:: (class) +* FileStream class-standard streams:: (class) +* FileStream-basic:: (instance) +* FileStream-buffering:: (instance) +* FileStream-compiling:: (instance) +* FileStream-initialize-release:: (instance) +* FileStream-overriding inherited methods:: (instance) +* FileStream-testing:: (instance)  -File: gst-base.info, Node: Float-printing, Next: Float-storing, Prev: Float-comparing, Up: Float +File: gst-base.info, Node: FileStream class-file-in, Next: FileStream class-standard streams, Up: FileStream -1.75.9 Float: printing ----------------------- +1.76.1 FileStream class: file-in +-------------------------------- -printOn: aStream - Print a representation of the receiver on aStream +fileIn: aFileName + File in the aFileName file. During a file in operation, global + variables (starting with an uppercase letter) that are not + declared yet don't yield an `unknown variable' error. Instead, + they are defined as nil in the `Undeclared' dictionary (a global + variable residing in Smalltalk). As soon as you add the variable + to a namespace (for example by creating a class) the Association + will be removed from Undeclared and reused in the namespace, so + that the old references will automagically point to the new value. +fileIn: aFileName ifMissing: aSymbol + Conditionally do a file in, only if the key (often a class) + specified by 'aSymbol' is not present in the Smalltalk system + dictionary already. During a file in operation, global variables + (starting with an uppercase letter) that are not declared don't + yield an `unknown variable' error. Instead, they are defined as + nil in the `Undeclared' dictionary (a global variable residing in + Smalltalk). As soon as you add the variable to a namespace (for + example by creating a class) the Association will be removed from + Undeclared and reused in the namespace, so that the old references + will automagically point to the new value. - -File: gst-base.info, Node: Float-storing, Next: Float-testing, Prev: Float-printing, Up: Float +fileIn: aFileName ifTrue: aBoolean + Conditionally do a file in, only if the supplied boolean is true. + During a file in operation, global variables (starting with an + uppercase letter) that are not declared don't yield an `unknown + variable' error. Instead, they are defined as nil in the + `Undeclared' dictionary (a global variable residing in Smalltalk). + As soon as you add the variable to a namespace (for example by + creating a class) the Association will be removed from Undeclared + and reused in the namespace, so that the old references will + automagically point to the new value. -1.75.10 Float: storing ----------------------- +fileIn: aFileName line: lineInteger from: realFileName at: aCharPos + File in the aFileName file giving errors such as if it was loaded + from the given line, file name and starting position (instead of + 1). -isLiteralObject - Answer whether the receiver is expressible as a Smalltalk literal. +generateMakefileOnto: aStream + Generate a make file for the file-ins since record was last set to + true. Store it on aStream -storeLiteralOn: aStream - Store on aStream some Smalltalk code which compiles to the receiver +initialize + Private - Initialize the receiver's class variables -storeOn: aStream - Print a representation of the receiver on aStream +record: recordFlag + Set whether Smalltalk should record information about nested + file-ins. When recording is enabled, use #generateMakefileOnto: + to automatically generate a valid makefile for the intervening + file-ins. + +require: assoc + Conditionally do a file in from the value of assoc, only if the + key of assoc is not present in the Smalltalk system dictionary + already. During a file in operation, global variables (starting + with an uppercase letter) that are not declared don't yield an + `unknown variable' error. Instead, they are defined as nil in the + `Undeclared' dictionary (a global variable residing in Smalltalk). + As soon as you add the variable to a namespace (for example by + creating a class) the Association will be removed from Undeclared + and reused in the namespace, so that the old references will + automagically point to the new value. + +verbose: verboseFlag + Set whether Smalltalk should output debugging messages when filing + in  -File: gst-base.info, Node: Float-testing, Next: Float-testing functionality, Prev: Float-storing, Up: Float +File: gst-base.info, Node: FileStream class-standard streams, Next: FileStream-basic, Prev: FileStream class-file-in, Up: FileStream -1.75.11 Float: testing ----------------------- +1.76.2 FileStream class: standard streams +----------------------------------------- -isFinite - Answer whether the receiver does not represent infinity, nor a NaN +stderr + Answer a FileStream that is attached the Smalltalk program's + standard error file handle, which can be used for error messages + and diagnostics issued by the program. -isInfinite - Answer whether the receiver represents positive or negative - infinity +stdin + Answer a FileStream that is attached the Smalltalk program's + standard input file handle, which is the normal source of input + for the program. -isNaN - Answer whether the receiver represents a NaN +stdout + Answer a FileStream that is attached the Smalltalk program's + standard output file handle; this is used for normal output from + the program. -negative - Answer whether the receiver is negative -positive - Answer whether the receiver is positive. Negative zero is not - positive, so the definition is not simply >= 0. + +File: gst-base.info, Node: FileStream-basic, Next: FileStream-buffering, Prev: FileStream class-standard streams, Up: FileStream -sign - Answer 1 if the receiver is greater than 0, -1 if less than 0, - else 0. Negative zero is the same as positive zero. +1.76.3 FileStream: basic +------------------------ -strictlyPositive - Answer whether the receiver is > 0 +bufferStart + Private - Answer the offset from the start of the file + corresponding to the beginning of the read buffer. +copyFrom: from to: to + Answer the contents of the file between the two given positions - -File: gst-base.info, Node: Float-testing functionality, Next: Float-transcendental operations, Prev: Float-testing, Up: Float +next + Return the next character in the file, or nil at eof -1.75.12 Float: testing functionality ------------------------------------- +nextPut: aCharacter + Store aCharacter on the file -isFloat - Answer `true'. +peek + Return the next character in the file, or nil at eof. Don't + advance the file pointer. +position + Answer the zero-based position from the start of the file - -File: gst-base.info, Node: Float-transcendental operations, Prev: Float-testing functionality, Up: Float +position: n + Set the file pointer to the zero-based position n -1.75.13 Float: transcendental operations ----------------------------------------- +size + Return the current size of the file, in bytes -asFloat - Just defined for completeness. Return the receiver. +truncate + Truncate the file at the current position -ceilingLog: radix - Answer (self log: radix) ceiling. -estimatedLog - Answer an estimate of (self abs floorLog: 10) + +File: gst-base.info, Node: FileStream-buffering, Next: FileStream-compiling, Prev: FileStream-basic, Up: FileStream -floorLog: radix - Answer (self log: radix) floor. +1.76.4 FileStream: buffering +---------------------------- -log - Answer log base 10 of the receiver. +bufferSize + Answer the file's current buffer +bufferSize: bufSize + Flush the file and set the buffer's size to bufSize - -File: gst-base.info, Node: FloatD, Next: FloatE, Prev: Float, Up: Base classes +clean + Synchronize the file descriptor's state with the object's state. -1.76 FloatD -=========== +fill + Private - Fill the input buffer -Defined in namespace Smalltalk -Superclass: Float -Category: Language-Data types - My instances represent floating point numbers that have the same - accuracy as C's "double" numbers. +flush + Flush the output buffer. -* Menu: +newBuffer + Private - Answer a String to be used as the receiver's buffer -* FloatD class-byte-order dependencies:: (class) -* FloatD class-characterization:: (class) -* FloatD class-converting:: (class) -* FloatD-built ins:: (instance) -* FloatD-coercing:: (instance) +next: n bufferAll: aCollection startingAt: pos + Private - Assuming that the buffer has space for n characters, + store n characters of aCollection in the buffer, starting from the + pos-th. - -File: gst-base.info, Node: FloatD class-byte-order dependencies, Next: FloatD class-characterization, Up: FloatD +nextAvailable: anInteger into: aCollection startingAt: pos + Read up to anInteger bytes from the stream and store them into + aCollection. Return the number of bytes read. + +nextAvailable: anInteger putAllOn: aStream + Copy up to anInteger bytes from the stream into aStream. Return + the number of bytes read. -1.76.1 FloatD class: byte-order dependencies --------------------------------------------- +pendingWrite + Answer whether the output buffer is full. -fromBytes: aByteArray - Answer a float with the bytes in aByteArray, which are in - big-endian format. -signByte - Answer the byte of the receiver that contains the sign bit + +File: gst-base.info, Node: FileStream-compiling, Next: FileStream-initialize-release, Prev: FileStream-buffering, Up: FileStream + +1.76.5 FileStream: compiling +---------------------------- + +segmentFrom: startPos to: endPos + Answer an object that, when sent #asString, will yield the result + of sending `copyFrom: startPos to: endPos' to the receiver  -File: gst-base.info, Node: FloatD class-characterization, Next: FloatD class-converting, Prev: FloatD class-byte-order dependencies, Up: FloatD +File: gst-base.info, Node: FileStream-initialize-release, Next: FileStream-overriding inherited methods, Prev: FileStream-compiling, Up: FileStream -1.76.2 FloatD class: characterization +1.76.6 FileStream: initialize-release ------------------------------------- -decimalDigits - Return the number of decimal digits of precision for a FloatD. - Technically, if P is the precision for the representation, then - the decimal precision Q is the maximum number of decimal digits - such that any floating point number with Q base 10 digits can be - rounded to a floating point number with P base 2 digits and back - again, without change to the Q decimal digits. - -emax - Return the maximum allowable exponent for a FloatD that is finite. +initialize + Initialize the receiver's instance variables -emin - Return the maximum allowable exponent for a FloatD that is finite. -fmax - Return the largest normalized FloatD that is not infinite. + +File: gst-base.info, Node: FileStream-overriding inherited methods, Next: FileStream-testing, Prev: FileStream-initialize-release, Up: FileStream -fminNormalized - Return the smallest normalized FloatD that is > 0 +1.76.7 FileStream: overriding inherited methods +----------------------------------------------- -infinity - Return a FloatD that represents positive infinity. +next: n putAll: aCollection startingAt: pos + Write n values from aCollection, the first being at pos. -nan - Return a FloatD that represents a mathematically indeterminate - value (e.g. Inf - Inf, Inf / Inf). +nextLine + Returns a collection of the same type that the stream accesses, + containing the next line up to the next new-line character. + Returns the entire rest of the stream's contents if no new-line + character is found. -negativeInfinity - Return a FloatD that represents negative infinity. +nextPutAllOn: aStream + Put all the characters of the receiver in aStream. -precision - Answer the number of bits in the mantissa. 1 + (2^-precision) = 1 +upTo: aCharacter + Returns a collection of the same type that the stream accesses, + containing data up to aCharacter. Returns the entire rest of the + stream's contents if no such character is found.  -File: gst-base.info, Node: FloatD class-converting, Next: FloatD-built ins, Prev: FloatD class-characterization, Up: FloatD +File: gst-base.info, Node: FileStream-testing, Prev: FileStream-overriding inherited methods, Up: FileStream -1.76.3 FloatD class: converting -------------------------------- +1.76.8 FileStream: testing +-------------------------- -coerce: aNumber - Answer aNumber converted to a FloatD +atEnd + Answer whether data has come to an end  -File: gst-base.info, Node: FloatD-built ins, Next: FloatD-coercing, Prev: FloatD class-converting, Up: FloatD +File: gst-base.info, Node: Float, Next: FloatD, Prev: FileStream, Up: Base classes -1.76.4 FloatD: built ins ------------------------- +1.77 Float +========== -* arg - Multiply the receiver and arg and answer another Number +Defined in namespace Smalltalk +Superclass: Number +Category: Language-Data types + My instances represent floating point numbers that have arbitrary + precision. Besides the standard numerical operations, they provide + transcendental operations too. They implement IEEE-754 correctly + if the hardware supports it. -+ arg - Sum the receiver and arg and answer another Number +* Menu: -- arg - Subtract arg from the receiver and answer another Number +* Float class-byte-order dependancies:: (class) +* Float class-characterization:: (class) +* Float-arithmetic:: (instance) +* Float-basic:: (instance) +* Float-built ins:: (instance) +* Float-coercing:: (instance) +* Float-coercion:: (instance) +* Float-comparing:: (instance) +* Float-printing:: (instance) +* Float-storing:: (instance) +* Float-testing:: (instance) +* Float-testing functionality:: (instance) +* Float-transcendental operations:: (instance) -/ arg - Divide the receiver by arg and answer another FloatD + +File: gst-base.info, Node: Float class-byte-order dependancies, Next: Float class-characterization, Up: Float -< arg - Answer whether the receiver is less than arg +1.77.1 Float class: byte-order dependancies +------------------------------------------- -<= arg - Answer whether the receiver is less than or equal to arg +signByte + Answer the byte of the receiver that contains the sign bit -= arg - Answer whether the receiver is equal to arg -> arg - Answer whether the receiver is greater than arg + +File: gst-base.info, Node: Float class-characterization, Next: Float-arithmetic, Prev: Float class-byte-order dependancies, Up: Float ->= arg - Answer whether the receiver is greater than or equal to arg +1.77.2 Float class: characterization +------------------------------------ -asFloatE - Answer the receiver converted to a FloatE +denormalized + Answer whether instances of the receiver can be in denormalized + form. -asFloatQ - Answer the receiver converted to a FloatQ +e + Returns the value of e. Hope is that it is precise enough -exponent - Answer the exponent of the receiver in mantissa*2^exponent - representation ( |mantissa|<=1 ) +epsilon + Return the smallest Float x for which is 1 + x ~= 1 -fractionPart - Answer the fractional part of the receiver +fmin + Return the smallest Float that is > 0. -timesTwoPower: arg - Answer the receiver multiplied by 2^arg +fminDenormalized + Return the smallest Float that is > 0 if denormalized values are + supported, else return 0. -truncated - Truncate the receiver towards zero and answer the result +ln10 + Returns the value of ln 10. Hope is that it is precise enough -~= arg - Answer whether the receiver is not equal to arg +log10Base2 + Returns the value of log2 10. Hope is that it is precise enough +pi + Returns the value of pi. Hope is that it is precise enough - -File: gst-base.info, Node: FloatD-coercing, Prev: FloatD-built ins, Up: FloatD +radix + Answer the base in which computations between instances of the + receiver are made. This should be 2 on about every known + computer, so GNU Smalltalk always answers 2. -1.76.5 FloatD: coercing ------------------------ -asFloatD - Just defined for completeness. Return the receiver. + +File: gst-base.info, Node: Float-arithmetic, Next: Float-basic, Prev: Float class-characterization, Up: Float -coerce: aNumber - Coerce aNumber to the receiver's class +1.77.3 Float: arithmetic +------------------------ -generality - Answer the receiver's generality +integerPart + Return the receiver's integer part -unity - Coerce 1 to the receiver's class +negated + Return the negation of the receiver. Unlike 0-self, this converts + correctly signed zeros. -zero - Coerce 0 to the receiver's class +raisedToInteger: anInteger + Return self raised to the anInteger-th power  -File: gst-base.info, Node: FloatE, Next: FloatQ, Prev: FloatD, Up: Base classes - -1.77 FloatE -=========== +File: gst-base.info, Node: Float-basic, Next: Float-built ins, Prev: Float-arithmetic, Up: Float -Defined in namespace Smalltalk -Superclass: Float -Category: Language-Data types - My instances represent floating point numbers that have the same - accuracy as C's "float" numbers. +1.77.4 Float: basic +------------------- -* Menu: +hash + Answer an hash value for the receiver -* FloatE class-byte-order dependancies:: (class) -* FloatE class-byte-order dependencies:: (class) -* FloatE class-characterization:: (class) -* FloatE class-converting:: (class) -* FloatE-built ins:: (instance) -* FloatE-coercing:: (instance)  -File: gst-base.info, Node: FloatE class-byte-order dependancies, Next: FloatE class-byte-order dependencies, Up: FloatE - -1.77.1 FloatE class: byte-order dependancies --------------------------------------------- - -signByte - Answer the byte of the receiver that contains the sign bit +File: gst-base.info, Node: Float-built ins, Next: Float-coercing, Prev: Float-basic, Up: Float +1.77.5 Float: built ins +----------------------- - -File: gst-base.info, Node: FloatE class-byte-order dependencies, Next: FloatE class-characterization, Prev: FloatE class-byte-order dependancies, Up: FloatE +arcCos + Answer the arc-cosine of the receiver -1.77.2 FloatE class: byte-order dependencies --------------------------------------------- +arcSin + Answer the arc-sine of the receiver -fromBytes: aByteArray - Answer a float with the bytes in aByteArray, which are in - big-endian format. +arcTan + Answer the arc-tangent of the receiver +ceiling + Answer the integer part of the receiver, truncated towards + +infinity - -File: gst-base.info, Node: FloatE class-characterization, Next: FloatE class-converting, Prev: FloatE class-byte-order dependencies, Up: FloatE +cos + Answer the cosine of the receiver -1.77.3 FloatE class: characterization -------------------------------------- +exp + Answer 'e' (2.718281828459...) raised to the receiver -decimalDigits - Return the number of decimal digits of precision for a FloatE. - Technically, if P is the precision for the representation, then - the decimal precision Q is the maximum number of decimal digits - such that any floating point number with Q base 10 digits can be - rounded to a floating point number with P base 2 digits and back - again, without change to the Q decimal digits. +floor + Answer the integer part of the receiver, truncated towards + -infinity -e - Returns the value of e. Hope is that it is precise enough +ln + Answer the logarithm of the receiver in base 'e' + (2.718281828459...) -emax - Return the maximum allowable exponent for a FloatE that is finite. +primHash + Private - Answer an hash value for the receiver -emin - Return the maximum allowable exponent for a FloatE that is finite. +raisedTo: aNumber + Answer the receiver raised to its aNumber power -fmax - Return the largest normalized FloatE that is not infinite. +sin + Answer the sine of the receiver -fminNormalized - Return the smallest normalized FloatE that is > 0 +sqrt + Answer the square root of the receiver -infinity - Return a FloatE that represents positive infinity. +tan + Answer the tangent of the receiver -ln10 - Returns the value of ln 10. Hope is that it is precise enough -log10Base2 - Returns the value of log2 10. Hope is that it is precise enough + +File: gst-base.info, Node: Float-coercing, Next: Float-coercion, Prev: Float-built ins, Up: Float -nan - Return a FloatE that represents a mathematically indeterminate - value (e.g. Inf - Inf, Inf / Inf). +1.77.6 Float: coercing +---------------------- -negativeInfinity - Return a FloatE that represents negative infinity. +asExactFraction + Convert the receiver into a fraction with optimal approximation, + but with usually huge terms. -pi - Returns the value of pi. Hope is that it is precise enough +asFraction + Convert the receiver into a fraction with a good (but undefined) + approximation -precision - Answer the number of bits in the mantissa. 1 + (2^-precision) = 1 +truncated + Convert the receiver to an Integer. Only used for LargeIntegers, + there are primitives for the other cases.  -File: gst-base.info, Node: FloatE class-converting, Next: FloatE-built ins, Prev: FloatE class-characterization, Up: FloatE +File: gst-base.info, Node: Float-coercion, Next: Float-comparing, Prev: Float-coercing, Up: Float -1.77.4 FloatE class: converting -------------------------------- +1.77.7 Float: coercion +---------------------- -coerce: aNumber - Answer aNumber converted to a FloatE +asCNumber + Convert the receiver to a kind of number that is understood by the + C call-out mechanism.  -File: gst-base.info, Node: FloatE-built ins, Next: FloatE-coercing, Prev: FloatE class-converting, Up: FloatE - -1.77.5 FloatE: built ins ------------------------- +File: gst-base.info, Node: Float-comparing, Next: Float-printing, Prev: Float-coercion, Up: Float -* arg - Multiply the receiver and arg and answer another Number +1.77.8 Float: comparing +----------------------- -+ arg - Sum the receiver and arg and answer another Number +max: aNumber + Answer the maximum between the receiver and aNumber. Redefine in + subclasses if necessary to ensure that if either self or aNumber + is a NaN, it is always answered. -- arg - Subtract arg from the receiver and answer another Number +min: aNumber + Answer the minimum between the receiver and aNumber. Redefine in + subclasses if necessary to ensure that if either self or aNumber + is a NaN, it is always answered. + +withSignOf: aNumber + Answer the receiver, with its sign possibly changed to match that + of aNumber. + + + +File: gst-base.info, Node: Float-printing, Next: Float-storing, Prev: Float-comparing, Up: Float + +1.77.9 Float: printing +---------------------- + +printOn: aStream + Print a representation of the receiver on aStream + + + +File: gst-base.info, Node: Float-storing, Next: Float-testing, Prev: Float-printing, Up: Float + +1.77.10 Float: storing +---------------------- + +isLiteralObject + Answer whether the receiver is expressible as a Smalltalk literal. + +storeLiteralOn: aStream + Store on aStream some Smalltalk code which compiles to the receiver + +storeOn: aStream + Print a representation of the receiver on aStream + + + +File: gst-base.info, Node: Float-testing, Next: Float-testing functionality, Prev: Float-storing, Up: Float + +1.77.11 Float: testing +---------------------- + +isFinite + Answer whether the receiver does not represent infinity, nor a NaN + +isInfinite + Answer whether the receiver represents positive or negative + infinity + +isNaN + Answer whether the receiver represents a NaN + +negative + Answer whether the receiver is negative + +positive + Answer whether the receiver is positive. Negative zero is not + positive, so the definition is not simply >= 0. + +sign + Answer 1 if the receiver is greater than 0, -1 if less than 0, + else 0. Negative zero is the same as positive zero. + +strictlyPositive + Answer whether the receiver is > 0 + + + +File: gst-base.info, Node: Float-testing functionality, Next: Float-transcendental operations, Prev: Float-testing, Up: Float + +1.77.12 Float: testing functionality +------------------------------------ + +isFloat + Answer `true'. + + + +File: gst-base.info, Node: Float-transcendental operations, Prev: Float-testing functionality, Up: Float + +1.77.13 Float: transcendental operations +---------------------------------------- + +asFloat + Just defined for completeness. Return the receiver. + +ceilingLog: radix + Answer (self log: radix) ceiling. + +estimatedLog + Answer an estimate of (self abs floorLog: 10) + +floorLog: radix + Answer (self log: radix) floor. + +log + Answer log base 10 of the receiver. + + + +File: gst-base.info, Node: FloatD, Next: FloatE, Prev: Float, Up: Base classes + +1.78 FloatD +=========== + +Defined in namespace Smalltalk +Superclass: Float +Category: Language-Data types + My instances represent floating point numbers that have the same + accuracy as C's "double" numbers. + +* Menu: + +* FloatD class-byte-order dependencies:: (class) +* FloatD class-characterization:: (class) +* FloatD class-converting:: (class) +* FloatD-built ins:: (instance) +* FloatD-coercing:: (instance) + + +File: gst-base.info, Node: FloatD class-byte-order dependencies, Next: FloatD class-characterization, Up: FloatD + +1.78.1 FloatD class: byte-order dependencies +-------------------------------------------- + +fromBytes: aByteArray + Answer a float with the bytes in aByteArray, which are in + big-endian format. + +signByte + Answer the byte of the receiver that contains the sign bit + + + +File: gst-base.info, Node: FloatD class-characterization, Next: FloatD class-converting, Prev: FloatD class-byte-order dependencies, Up: FloatD + +1.78.2 FloatD class: characterization +------------------------------------- + +decimalDigits + Return the number of decimal digits of precision for a FloatD. + Technically, if P is the precision for the representation, then + the decimal precision Q is the maximum number of decimal digits + such that any floating point number with Q base 10 digits can be + rounded to a floating point number with P base 2 digits and back + again, without change to the Q decimal digits. + +emax + Return the maximum allowable exponent for a FloatD that is finite. + +emin + Return the maximum allowable exponent for a FloatD that is finite. + +fmax + Return the largest normalized FloatD that is not infinite. + +fminNormalized + Return the smallest normalized FloatD that is > 0 + +infinity + Return a FloatD that represents positive infinity. + +nan + Return a FloatD that represents a mathematically indeterminate + value (e.g. Inf - Inf, Inf / Inf). + +negativeInfinity + Return a FloatD that represents negative infinity. + +precision + Answer the number of bits in the mantissa. 1 + (2^-precision) = 1 -/ arg - Divide the receiver by arg and answer another FloatE + + +File: gst-base.info, Node: FloatD class-converting, Next: FloatD-built ins, Prev: FloatD class-characterization, Up: FloatD + +1.78.3 FloatD class: converting +------------------------------- + +coerce: aNumber + Answer aNumber converted to a FloatD + + + +File: gst-base.info, Node: FloatD-built ins, Next: FloatD-coercing, Prev: FloatD class-converting, Up: FloatD + +1.78.4 FloatD: built ins +------------------------ + +* arg + Multiply the receiver and arg and answer another Number + ++ arg + Sum the receiver and arg and answer another Number + +- arg + Subtract arg from the receiver and answer another Number + +/ arg + Divide the receiver by arg and answer another FloatD < arg Answer whether the receiver is less than arg @@ -1110,8 +1508,8 @@ >= arg Answer whether the receiver is greater than or equal to arg -asFloatD - Answer the receiver converted to a FloatD +asFloatE + Answer the receiver converted to a FloatE asFloatQ Answer the receiver converted to a FloatQ @@ -1134,12 +1532,12 @@  -File: gst-base.info, Node: FloatE-coercing, Prev: FloatE-built ins, Up: FloatE +File: gst-base.info, Node: FloatD-coercing, Prev: FloatD-built ins, Up: FloatD -1.77.6 FloatE: coercing +1.78.5 FloatD: coercing ----------------------- -asFloatE +asFloatD Just defined for completeness. Return the receiver. coerce: aNumber @@ -1156,30 +1554,30 @@  -File: gst-base.info, Node: FloatQ, Next: Fraction, Prev: FloatE, Up: Base classes +File: gst-base.info, Node: FloatE, Next: FloatQ, Prev: FloatD, Up: Base classes -1.78 FloatQ +1.79 FloatE =========== Defined in namespace Smalltalk Superclass: Float Category: Language-Data types My instances represent floating point numbers that have the same - accuracy as C's "long double" numbers. + accuracy as C's "float" numbers. * Menu: -* FloatQ class-byte-order dependancies:: (class) -* FloatQ class-characterization:: (class) -* FloatQ class-converting:: (class) -* FloatQ-built ins:: (instance) -* FloatQ-coercing:: (instance) -* FloatQ-misc math:: (instance) +* FloatE class-byte-order dependancies:: (class) +* FloatE class-byte-order dependencies:: (class) +* FloatE class-characterization:: (class) +* FloatE class-converting:: (class) +* FloatE-built ins:: (instance) +* FloatE-coercing:: (instance)  -File: gst-base.info, Node: FloatQ class-byte-order dependancies, Next: FloatQ class-characterization, Up: FloatQ +File: gst-base.info, Node: FloatE class-byte-order dependancies, Next: FloatE class-byte-order dependencies, Up: FloatE -1.78.1 FloatQ class: byte-order dependancies +1.79.1 FloatE class: byte-order dependancies -------------------------------------------- signByte @@ -1187,13 +1585,24 @@  -File: gst-base.info, Node: FloatQ class-characterization, Next: FloatQ class-converting, Prev: FloatQ class-byte-order dependancies, Up: FloatQ +File: gst-base.info, Node: FloatE class-byte-order dependencies, Next: FloatE class-characterization, Prev: FloatE class-byte-order dependancies, Up: FloatE + +1.79.2 FloatE class: byte-order dependencies +-------------------------------------------- + +fromBytes: aByteArray + Answer a float with the bytes in aByteArray, which are in + big-endian format. + + + +File: gst-base.info, Node: FloatE class-characterization, Next: FloatE class-converting, Prev: FloatE class-byte-order dependencies, Up: FloatE -1.78.2 FloatQ class: characterization +1.79.3 FloatE class: characterization ------------------------------------- decimalDigits - Return the number of decimal digits of precision for a FloatQ. + Return the number of decimal digits of precision for a FloatE. Technically, if P is the precision for the representation, then the decimal precision Q is the maximum number of decimal digits such that any floating point number with Q base 10 digits can be @@ -1204,19 +1613,19 @@ Returns the value of e. Hope is that it is precise enough emax - Return the maximum allowable exponent for a FloatQ that is finite. + Return the maximum allowable exponent for a FloatE that is finite. emin - Return the maximum allowable exponent for a FloatQ that is finite. + Return the maximum allowable exponent for a FloatE that is finite. fmax - Return the largest normalized FloatQ that is not infinite. + Return the largest normalized FloatE that is not infinite. fminNormalized - Return the smallest normalized FloatQ that is > 0 + Return the smallest normalized FloatE that is > 0 infinity - Return a FloatQ that represents positive infinity. + Return a FloatE that represents positive infinity. ln10 Returns the value of ln 10. Hope is that it is precise enough @@ -1225,11 +1634,11 @@ Returns the value of log2 10. Hope is that it is precise enough nan - Return a FloatQ that represents a mathematically indeterminate + Return a FloatE that represents a mathematically indeterminate value (e.g. Inf - Inf, Inf / Inf). negativeInfinity - Return a FloatQ that represents negative infinity. + Return a FloatE that represents negative infinity. pi Returns the value of pi. Hope is that it is precise enough @@ -1239,19 +1648,19 @@  -File: gst-base.info, Node: FloatQ class-converting, Next: FloatQ-built ins, Prev: FloatQ class-characterization, Up: FloatQ +File: gst-base.info, Node: FloatE class-converting, Next: FloatE-built ins, Prev: FloatE class-characterization, Up: FloatE -1.78.3 FloatQ class: converting +1.79.4 FloatE class: converting ------------------------------- coerce: aNumber - Answer aNumber converted to a FloatQ + Answer aNumber converted to a FloatE  -File: gst-base.info, Node: FloatQ-built ins, Next: FloatQ-coercing, Prev: FloatQ class-converting, Up: FloatQ +File: gst-base.info, Node: FloatE-built ins, Next: FloatE-coercing, Prev: FloatE class-converting, Up: FloatE -1.78.4 FloatQ: built ins +1.79.5 FloatE: built ins ------------------------ * arg @@ -1264,7 +1673,7 @@ Subtract arg from the receiver and answer another Number / arg - Divide the receiver by arg and answer another FloatQ + Divide the receiver by arg and answer another FloatE < arg Answer whether the receiver is less than arg @@ -1284,8 +1693,8 @@ asFloatD Answer the receiver converted to a FloatD -asFloatE - Answer the receiver converted to a FloatE +asFloatQ + Answer the receiver converted to a FloatQ exponent Answer the exponent of the receiver in mantissa*2^exponent @@ -1305,12 +1714,183 @@  -File: gst-base.info, Node: FloatQ-coercing, Next: FloatQ-misc math, Prev: FloatQ-built ins, Up: FloatQ +File: gst-base.info, Node: FloatE-coercing, Prev: FloatE-built ins, Up: FloatE -1.78.5 FloatQ: coercing +1.79.6 FloatE: coercing ----------------------- -asFloatQ +asFloatE + Just defined for completeness. Return the receiver. + +coerce: aNumber + Coerce aNumber to the receiver's class + +generality + Answer the receiver's generality + +unity + Coerce 1 to the receiver's class + +zero + Coerce 0 to the receiver's class + + + +File: gst-base.info, Node: FloatQ, Next: Fraction, Prev: FloatE, Up: Base classes + +1.80 FloatQ +=========== + +Defined in namespace Smalltalk +Superclass: Float +Category: Language-Data types + My instances represent floating point numbers that have the same + accuracy as C's "long double" numbers. + +* Menu: + +* FloatQ class-byte-order dependancies:: (class) +* FloatQ class-characterization:: (class) +* FloatQ class-converting:: (class) +* FloatQ-built ins:: (instance) +* FloatQ-coercing:: (instance) +* FloatQ-misc math:: (instance) + + +File: gst-base.info, Node: FloatQ class-byte-order dependancies, Next: FloatQ class-characterization, Up: FloatQ + +1.80.1 FloatQ class: byte-order dependancies +-------------------------------------------- + +signByte + Answer the byte of the receiver that contains the sign bit + + + +File: gst-base.info, Node: FloatQ class-characterization, Next: FloatQ class-converting, Prev: FloatQ class-byte-order dependancies, Up: FloatQ + +1.80.2 FloatQ class: characterization +------------------------------------- + +decimalDigits + Return the number of decimal digits of precision for a FloatQ. + Technically, if P is the precision for the representation, then + the decimal precision Q is the maximum number of decimal digits + such that any floating point number with Q base 10 digits can be + rounded to a floating point number with P base 2 digits and back + again, without change to the Q decimal digits. + +e + Returns the value of e. Hope is that it is precise enough + +emax + Return the maximum allowable exponent for a FloatQ that is finite. + +emin + Return the maximum allowable exponent for a FloatQ that is finite. + +fmax + Return the largest normalized FloatQ that is not infinite. + +fminNormalized + Return the smallest normalized FloatQ that is > 0 + +infinity + Return a FloatQ that represents positive infinity. + +ln10 + Returns the value of ln 10. Hope is that it is precise enough + +log10Base2 + Returns the value of log2 10. Hope is that it is precise enough + +nan + Return a FloatQ that represents a mathematically indeterminate + value (e.g. Inf - Inf, Inf / Inf). + +negativeInfinity + Return a FloatQ that represents negative infinity. + +pi + Returns the value of pi. Hope is that it is precise enough + +precision + Answer the number of bits in the mantissa. 1 + (2^-precision) = 1 + + + +File: gst-base.info, Node: FloatQ class-converting, Next: FloatQ-built ins, Prev: FloatQ class-characterization, Up: FloatQ + +1.80.3 FloatQ class: converting +------------------------------- + +coerce: aNumber + Answer aNumber converted to a FloatQ + + + +File: gst-base.info, Node: FloatQ-built ins, Next: FloatQ-coercing, Prev: FloatQ class-converting, Up: FloatQ + +1.80.4 FloatQ: built ins +------------------------ + +* arg + Multiply the receiver and arg and answer another Number + ++ arg + Sum the receiver and arg and answer another Number + +- arg + Subtract arg from the receiver and answer another Number + +/ arg + Divide the receiver by arg and answer another FloatQ + +< arg + Answer whether the receiver is less than arg + +<= arg + Answer whether the receiver is less than or equal to arg + += arg + Answer whether the receiver is equal to arg + +> arg + Answer whether the receiver is greater than arg + +>= arg + Answer whether the receiver is greater than or equal to arg + +asFloatD + Answer the receiver converted to a FloatD + +asFloatE + Answer the receiver converted to a FloatE + +exponent + Answer the exponent of the receiver in mantissa*2^exponent + representation ( |mantissa|<=1 ) + +fractionPart + Answer the fractional part of the receiver + +timesTwoPower: arg + Answer the receiver multiplied by 2^arg + +truncated + Truncate the receiver towards zero and answer the result + +~= arg + Answer whether the receiver is not equal to arg + + + +File: gst-base.info, Node: FloatQ-coercing, Next: FloatQ-misc math, Prev: FloatQ-built ins, Up: FloatQ + +1.80.5 FloatQ: coercing +----------------------- + +asFloatQ Just defined for completeness. Return the receiver. coerce: aNumber @@ -1329,7 +1909,7 @@  File: gst-base.info, Node: FloatQ-misc math, Prev: FloatQ-coercing, Up: FloatQ -1.78.6 FloatQ: misc math +1.80.6 FloatQ: misc math ------------------------ raisedTo: aNumber @@ -1339,7 +1919,7 @@  File: gst-base.info, Node: Fraction, Next: Generator, Prev: FloatQ, Up: Base classes -1.79 Fraction +1.81 Fraction ============= Defined in namespace Smalltalk @@ -1366,7 +1946,7 @@  File: gst-base.info, Node: Fraction class-converting, Next: Fraction class-instance creation, Up: Fraction -1.79.1 Fraction class: converting +1.81.1 Fraction class: converting --------------------------------- coerce: aNumber @@ -1376,7 +1956,7 @@  File: gst-base.info, Node: Fraction class-instance creation, Next: Fraction-accessing, Prev: Fraction class-converting, Up: Fraction -1.79.2 Fraction class: instance creation +1.81.2 Fraction class: instance creation ---------------------------------------- initialize @@ -1389,7 +1969,7 @@  File: gst-base.info, Node: Fraction-accessing, Next: Fraction-arithmetic, Prev: Fraction class-instance creation, Up: Fraction -1.79.3 Fraction: accessing +1.81.3 Fraction: accessing -------------------------- denominator @@ -1402,7 +1982,7 @@  File: gst-base.info, Node: Fraction-arithmetic, Next: Fraction-coercing, Prev: Fraction-accessing, Up: Fraction -1.79.4 Fraction: arithmetic +1.81.4 Fraction: arithmetic --------------------------- * aNumber @@ -1432,7 +2012,7 @@  File: gst-base.info, Node: Fraction-coercing, Next: Fraction-coercion, Prev: Fraction-arithmetic, Up: Fraction -1.79.5 Fraction: coercing +1.81.5 Fraction: coercing ------------------------- ceiling @@ -1462,7 +2042,7 @@  File: gst-base.info, Node: Fraction-coercion, Next: Fraction-comparing, Prev: Fraction-coercing, Up: Fraction -1.79.6 Fraction: coercion +1.81.6 Fraction: coercion ------------------------- asCNumber @@ -1473,7 +2053,7 @@  File: gst-base.info, Node: Fraction-comparing, Next: Fraction-converting, Prev: Fraction-coercion, Up: Fraction -1.79.7 Fraction: comparing +1.81.7 Fraction: comparing -------------------------- < arg @@ -1498,7 +2078,7 @@  File: gst-base.info, Node: Fraction-converting, Next: Fraction-optimized cases, Prev: Fraction-comparing, Up: Fraction -1.79.8 Fraction: converting +1.81.8 Fraction: converting --------------------------- asFloatD @@ -1520,7 +2100,7 @@  File: gst-base.info, Node: Fraction-optimized cases, Next: Fraction-printing, Prev: Fraction-converting, Up: Fraction -1.79.9 Fraction: optimized cases +1.81.9 Fraction: optimized cases -------------------------------- negated @@ -1539,7 +2119,7 @@  File: gst-base.info, Node: Fraction-printing, Next: Fraction-testing, Prev: Fraction-optimized cases, Up: Fraction -1.79.10 Fraction: printing +1.81.10 Fraction: printing -------------------------- printOn: aStream @@ -1552,7 +2132,7 @@  File: gst-base.info, Node: Fraction-testing, Prev: Fraction-printing, Up: Fraction -1.79.11 Fraction: testing +1.81.11 Fraction: testing ------------------------- isRational @@ -1562,7 +2142,7 @@  File: gst-base.info, Node: Generator, Next: Getopt, Prev: Fraction, Up: Base classes -1.80 Generator +1.82 Generator ============== Defined in namespace Smalltalk @@ -1610,7 +2190,7 @@  File: gst-base.info, Node: Generator class-instance creation, Next: Generator-stream protocol, Up: Generator -1.80.1 Generator class: instance creation +1.82.1 Generator class: instance creation ----------------------------------------- inject: aValue into: aBlock @@ -1632,7 +2212,7 @@  File: gst-base.info, Node: Generator-stream protocol, Prev: Generator class-instance creation, Up: Generator -1.80.2 Generator: stream protocol +1.82.2 Generator: stream protocol --------------------------------- atEnd @@ -1663,7 +2243,7 @@  File: gst-base.info, Node: Getopt, Next: Halt, Prev: Generator, Up: Base classes -1.81 Getopt +1.83 Getopt =========== Defined in namespace Smalltalk @@ -1679,7 +2259,7 @@  File: gst-base.info, Node: Getopt class-instance creation, Up: Getopt -1.81.1 Getopt class: instance creation +1.83.1 Getopt class: instance creation -------------------------------------- parse: args with: pattern do: actionBlock @@ -1731,7 +2311,7 @@  File: gst-base.info, Node: Halt, Next: HashedCollection, Prev: Getopt, Up: Base classes -1.82 Halt +1.84 Halt ========= Defined in namespace Smalltalk @@ -1746,7 +2326,7 @@  File: gst-base.info, Node: Halt-description, Up: Halt -1.82.1 Halt: description +1.84.1 Halt: description ------------------------ description @@ -1759,7 +2339,7 @@  File: gst-base.info, Node: HashedCollection, Next: HomedAssociation, Prev: Halt, Up: Base classes -1.83 HashedCollection +1.85 HashedCollection ===================== Defined in namespace Smalltalk @@ -1784,7 +2364,7 @@  File: gst-base.info, Node: HashedCollection class-instance creation, Next: HashedCollection-accessing, Up: HashedCollection -1.83.1 HashedCollection class: instance creation +1.85.1 HashedCollection class: instance creation ------------------------------------------------ new @@ -1800,7 +2380,7 @@  File: gst-base.info, Node: HashedCollection-accessing, Next: HashedCollection-builtins, Prev: HashedCollection class-instance creation, Up: HashedCollection -1.83.2 HashedCollection: accessing +1.85.2 HashedCollection: accessing ---------------------------------- add: newObject @@ -1818,7 +2398,7 @@  File: gst-base.info, Node: HashedCollection-builtins, Next: HashedCollection-copying, Prev: HashedCollection-accessing, Up: HashedCollection -1.83.3 HashedCollection: builtins +1.85.3 HashedCollection: builtins --------------------------------- primAt: anIndex @@ -1840,7 +2420,7 @@  File: gst-base.info, Node: HashedCollection-copying, Next: HashedCollection-enumerating the elements of a collection, Prev: HashedCollection-builtins, Up: HashedCollection -1.83.4 HashedCollection: copying +1.85.4 HashedCollection: copying -------------------------------- deepCopy @@ -1855,7 +2435,7 @@  File: gst-base.info, Node: HashedCollection-enumerating the elements of a collection, Next: HashedCollection-rehashing, Prev: HashedCollection-copying, Up: HashedCollection -1.83.5 HashedCollection: enumerating the elements of a collection +1.85.5 HashedCollection: enumerating the elements of a collection ----------------------------------------------------------------- do: aBlock @@ -1865,7 +2445,7 @@  File: gst-base.info, Node: HashedCollection-rehashing, Next: HashedCollection-removing, Prev: HashedCollection-enumerating the elements of a collection, Up: HashedCollection -1.83.6 HashedCollection: rehashing +1.85.6 HashedCollection: rehashing ---------------------------------- rehash @@ -1875,7 +2455,7 @@  File: gst-base.info, Node: HashedCollection-removing, Next: HashedCollection-saving and loading, Prev: HashedCollection-rehashing, Up: HashedCollection -1.83.7 HashedCollection: removing +1.85.7 HashedCollection: removing --------------------------------- remove: oldObject ifAbsent: anExceptionBlock @@ -1886,7 +2466,7 @@  File: gst-base.info, Node: HashedCollection-saving and loading, Next: HashedCollection-storing, Prev: HashedCollection-removing, Up: HashedCollection -1.83.8 HashedCollection: saving and loading +1.85.8 HashedCollection: saving and loading ------------------------------------------- postLoad @@ -1901,7 +2481,7 @@  File: gst-base.info, Node: HashedCollection-storing, Next: HashedCollection-testing collections, Prev: HashedCollection-saving and loading, Up: HashedCollection -1.83.9 HashedCollection: storing +1.85.9 HashedCollection: storing -------------------------------- storeOn: aStream @@ -1911,7 +2491,7 @@  File: gst-base.info, Node: HashedCollection-testing collections, Prev: HashedCollection-storing, Up: HashedCollection -1.83.10 HashedCollection: testing collections +1.85.10 HashedCollection: testing collections --------------------------------------------- = aHashedCollection @@ -1944,7 +2524,7 @@  File: gst-base.info, Node: HomedAssociation, Next: IdentityDictionary, Prev: HashedCollection, Up: Base classes -1.84 HomedAssociation +1.86 HomedAssociation ===================== Defined in namespace Smalltalk @@ -1963,7 +2543,7 @@  File: gst-base.info, Node: HomedAssociation class-basic, Next: HomedAssociation-accessing, Up: HomedAssociation -1.84.1 HomedAssociation class: basic +1.86.1 HomedAssociation class: basic ------------------------------------ key: aKey value: aValue environment: aNamespace @@ -1973,7 +2553,7 @@  File: gst-base.info, Node: HomedAssociation-accessing, Next: HomedAssociation-finalization, Prev: HomedAssociation class-basic, Up: HomedAssociation -1.84.2 HomedAssociation: accessing +1.86.2 HomedAssociation: accessing ---------------------------------- environment @@ -1986,7 +2566,7 @@  File: gst-base.info, Node: HomedAssociation-finalization, Next: HomedAssociation-storing, Prev: HomedAssociation-accessing, Up: HomedAssociation -1.84.3 HomedAssociation: finalization +1.86.3 HomedAssociation: finalization ------------------------------------- mourn @@ -2001,7 +2581,7 @@  File: gst-base.info, Node: HomedAssociation-storing, Prev: HomedAssociation-finalization, Up: HomedAssociation -1.84.4 HomedAssociation: storing +1.86.4 HomedAssociation: storing -------------------------------- storeOn: aStream @@ -2011,7 +2591,7 @@  File: gst-base.info, Node: IdentityDictionary, Next: IdentitySet, Prev: HomedAssociation, Up: Base classes -1.85 IdentityDictionary +1.87 IdentityDictionary ======================= Defined in namespace Smalltalk @@ -2025,7 +2605,7 @@  File: gst-base.info, Node: IdentitySet, Next: Integer, Prev: IdentityDictionary, Up: Base classes -1.86 IdentitySet +1.88 IdentitySet ================ Defined in namespace Smalltalk @@ -2041,7 +2621,7 @@  File: gst-base.info, Node: IdentitySet-testing, Up: IdentitySet -1.86.1 IdentitySet: testing +1.88.1 IdentitySet: testing --------------------------- identityIncludes: anObject @@ -2052,7 +2632,7 @@  File: gst-base.info, Node: Integer, Next: Interval, Prev: IdentitySet, Up: Base classes -1.87 Integer +1.89 Integer ============ Defined in namespace Smalltalk @@ -2080,7 +2660,7 @@  File: gst-base.info, Node: Integer class-converting, Next: Integer-accessing, Up: Integer -1.87.1 Integer class: converting +1.89.1 Integer class: converting -------------------------------- coerce: aNumber @@ -2094,7 +2674,7 @@  File: gst-base.info, Node: Integer-accessing, Next: Integer-basic, Prev: Integer class-converting, Up: Integer -1.87.2 Integer: accessing +1.89.2 Integer: accessing ------------------------- denominator @@ -2107,7 +2687,7 @@  File: gst-base.info, Node: Integer-basic, Next: Integer-bit operators, Prev: Integer-accessing, Up: Integer -1.87.3 Integer: basic +1.89.3 Integer: basic --------------------- hash @@ -2117,7 +2697,7 @@  File: gst-base.info, Node: Integer-bit operators, Next: Integer-converting, Prev: Integer-basic, Up: Integer -1.87.4 Integer: bit operators +1.89.4 Integer: bit operators ----------------------------- allMask: anInteger @@ -2164,7 +2744,7 @@  File: gst-base.info, Node: Integer-converting, Next: Integer-extension, Prev: Integer-bit operators, Up: Integer -1.87.5 Integer: converting +1.89.5 Integer: converting -------------------------- asCharacter @@ -2196,7 +2776,7 @@  File: gst-base.info, Node: Integer-extension, Next: Integer-iterators, Prev: Integer-converting, Up: Integer -1.87.6 Integer: extension +1.89.6 Integer: extension ------------------------- alignTo: anInteger @@ -2207,7 +2787,7 @@  File: gst-base.info, Node: Integer-iterators, Next: Integer-math methods, Prev: Integer-extension, Up: Integer -1.87.7 Integer: iterators +1.89.7 Integer: iterators ------------------------- timesRepeat: aBlock @@ -2219,7 +2799,7 @@  File: gst-base.info, Node: Integer-math methods, Next: Integer-printing, Prev: Integer-iterators, Up: Integer -1.87.8 Integer: math methods +1.89.8 Integer: math methods ---------------------------- binomial: anInteger @@ -2255,7 +2835,7 @@  File: gst-base.info, Node: Integer-printing, Next: Integer-storing, Prev: Integer-math methods, Up: Integer -1.87.9 Integer: printing +1.89.9 Integer: printing ------------------------ displayOn: aStream @@ -2301,7 +2881,7 @@  File: gst-base.info, Node: Integer-storing, Next: Integer-testing functionality, Prev: Integer-printing, Up: Integer -1.87.10 Integer: storing +1.89.10 Integer: storing ------------------------ storeOn: aStream @@ -2314,7 +2894,7 @@  File: gst-base.info, Node: Integer-testing functionality, Prev: Integer-storing, Up: Integer -1.87.11 Integer: testing functionality +1.89.11 Integer: testing functionality -------------------------------------- isInteger @@ -2325,9 +2905,9 @@  -File: gst-base.info, Node: Interval, Next: LargeArray, Prev: Integer, Up: Base classes +File: gst-base.info, Node: Interval, Next: Iterable, Prev: Integer, Up: Base classes -1.88 Interval +1.90 Interval ============= Defined in namespace Smalltalk @@ -2348,7 +2928,7 @@  File: gst-base.info, Node: Interval class-instance creation, Next: Interval-basic, Up: Interval -1.88.1 Interval class: instance creation +1.90.1 Interval class: instance creation ---------------------------------------- from: startInteger to: stopInteger @@ -2367,7 +2947,7 @@  File: gst-base.info, Node: Interval-basic, Next: Interval-printing, Prev: Interval class-instance creation, Up: Interval -1.88.2 Interval: basic +1.90.2 Interval: basic ---------------------- at: index @@ -2396,7 +2976,7 @@  File: gst-base.info, Node: Interval-printing, Next: Interval-storing, Prev: Interval-basic, Up: Interval -1.88.3 Interval: printing +1.90.3 Interval: printing ------------------------- first @@ -2415,7 +2995,7 @@  File: gst-base.info, Node: Interval-storing, Next: Interval-testing, Prev: Interval-printing, Up: Interval -1.88.4 Interval: storing +1.90.4 Interval: storing ------------------------ storeOn: aStream @@ -2425,7 +3005,7 @@  File: gst-base.info, Node: Interval-testing, Prev: Interval-storing, Up: Interval -1.88.5 Interval: testing +1.90.5 Interval: testing ------------------------ = anInterval @@ -2436,9 +3016,124 @@  -File: gst-base.info, Node: LargeArray, Next: LargeArrayedCollection, Prev: Interval, Up: Base classes +File: gst-base.info, Node: Iterable, Next: LargeArray, Prev: Interval, Up: Base classes + +1.91 Iterable +============= + +Defined in namespace Smalltalk +Superclass: Object +Category: Collections + I am an abstract class. My instances are collections of objects + that can be iterated. The details on how they can be mutated (if + at all possible) are left to the subclasses. + +* Menu: + +* Iterable class-multibyte encodings:: (class) +* Iterable-enumeration:: (instance) +* Iterable-streaming:: (instance) + + +File: gst-base.info, Node: Iterable class-multibyte encodings, Next: Iterable-enumeration, Up: Iterable + +1.91.1 Iterable class: multibyte encodings +------------------------------------------ + +isUnicode + Answer true; the receiver is able to store arbitrary Unicode + characters. + + + +File: gst-base.info, Node: Iterable-enumeration, Next: Iterable-streaming, Prev: Iterable class-multibyte encodings, Up: Iterable + +1.91.2 Iterable: enumeration +---------------------------- + +allSatisfy: aBlock + Search the receiver for an element for which aBlock returns false. + Answer true if none does, false otherwise. + +anySatisfy: aBlock + Search the receiver for an element for which aBlock returns true. + Answer true if some does, false otherwise. + +collect: aBlock + Answer a new instance of a Collection containing all the results + of evaluating aBlock passing each of the receiver's elements + +conform: aBlock + Search the receiver for an element for which aBlock returns false. + Answer true if none does, false otherwise. + +contains: aBlock + Search the receiver for an element for which aBlock returns true. + Answer true if some does, false otherwise. + +count: aBlock + Count the elements of the receiver for which aBlock returns true, + and return their number. + +detect: aBlock + Search the receiver for an element for which aBlock returns true. + If some does, answer it. If none does, fail + +detect: aBlock ifNone: exceptionBlock + Search the receiver for an element for which aBlock returns true. + If some does, answer it. If none does, answer the result of + evaluating aBlock + +do: aBlock + Enumerate each object of the receiver, passing them to aBlock + +do: aBlock separatedBy: separatorBlock + Enumerate each object of the receiver, passing them to aBlock. + Between every two invocations of aBlock, invoke separatorBlock + +fold: binaryBlock + First, pass to binaryBlock the first and second elements of the + receiver; for each subsequent element, pass the result of the + previous evaluation and an element. Answer the result of the last + invocation, or the first element if the collection has size 1. + Fail if the collection is empty. + +inject: thisValue into: binaryBlock + First, pass to binaryBlock thisValue and the first element of the + receiver; for each subsequent element, pass the result of the + previous evaluation and an element. Answer the result of the last + invocation. + +noneSatisfy: aBlock + Search the receiver for an element for which aBlock returns true. + Answer true if none does, false otherwise. + +reject: aBlock + Answer a new instance of a Collection containing all the elements + in the receiver which, when passed to aBlock, don't answer true + +select: aBlock + Answer a new instance of a Collection containing all the elements + in the receiver which, when passed to aBlock, answer true + + + +File: gst-base.info, Node: Iterable-streaming, Prev: Iterable-enumeration, Up: Iterable -1.89 LargeArray +1.91.3 Iterable: streaming +-------------------------- + +nextPutAllOn: aStream + Write all the objects in the receiver to aStream + +readStream + Return a stream with the same contents as the receiver. + + + +File: gst-base.info, Node: LargeArray, Next: LargeArrayedCollection, Prev: Iterable, Up: Base classes + +1.92 LargeArray =============== Defined in namespace Smalltalk @@ -2454,7 +3149,7 @@  File: gst-base.info, Node: LargeArray-overridden, Up: LargeArray -1.89.1 LargeArray: overridden +1.92.1 LargeArray: overridden ----------------------------- newCollection: size @@ -2464,7 +3159,7 @@  File: gst-base.info, Node: LargeArrayedCollection, Next: LargeByteArray, Prev: LargeArray, Up: Base classes -1.90 LargeArrayedCollection +1.93 LargeArrayedCollection =========================== Defined in namespace Smalltalk @@ -2482,7 +3177,7 @@  File: gst-base.info, Node: LargeArrayedCollection class-instance creation, Next: LargeArrayedCollection-accessing, Up: LargeArrayedCollection -1.90.1 LargeArrayedCollection class: instance creation +1.93.1 LargeArrayedCollection class: instance creation ------------------------------------------------------ new: anInteger @@ -2493,7 +3188,7 @@  File: gst-base.info, Node: LargeArrayedCollection-accessing, Next: LargeArrayedCollection-basic, Prev: LargeArrayedCollection class-instance creation, Up: LargeArrayedCollection -1.90.2 LargeArrayedCollection: accessing +1.93.2 LargeArrayedCollection: accessing ---------------------------------------- at: anIndex @@ -2509,7 +3204,7 @@  File: gst-base.info, Node: LargeArrayedCollection-basic, Prev: LargeArrayedCollection-accessing, Up: LargeArrayedCollection -1.90.3 LargeArrayedCollection: basic +1.93.3 LargeArrayedCollection: basic ------------------------------------ = aLargeArray @@ -2525,7 +3220,7 @@  File: gst-base.info, Node: LargeByteArray, Next: LargeInteger, Prev: LargeArrayedCollection, Up: Base classes -1.91 LargeByteArray +1.94 LargeByteArray =================== Defined in namespace Smalltalk @@ -2541,7 +3236,7 @@  File: gst-base.info, Node: LargeByteArray-overridden, Up: LargeByteArray -1.91.1 LargeByteArray: overridden +1.94.1 LargeByteArray: overridden --------------------------------- costOfNewIndex @@ -2558,7 +3253,7 @@  File: gst-base.info, Node: LargeInteger, Next: LargeNegativeInteger, Prev: LargeByteArray, Up: Base classes -1.92 LargeInteger +1.95 LargeInteger ================= Defined in namespace Smalltalk @@ -2584,7 +3279,7 @@  File: gst-base.info, Node: LargeInteger-accessing, Next: LargeInteger-arithmetic, Up: LargeInteger -1.92.1 LargeInteger: accessing +1.95.1 LargeInteger: accessing ------------------------------ raisedToInteger: n @@ -2594,7 +3289,7 @@  File: gst-base.info, Node: LargeInteger-arithmetic, Next: LargeInteger-bit operations, Prev: LargeInteger-accessing, Up: LargeInteger -1.92.2 LargeInteger: arithmetic +1.95.2 LargeInteger: arithmetic ------------------------------- * aNumber @@ -2640,7 +3335,7 @@  File: gst-base.info, Node: LargeInteger-bit operations, Next: LargeInteger-built-ins, Prev: LargeInteger-arithmetic, Up: LargeInteger -1.92.3 LargeInteger: bit operations +1.95.3 LargeInteger: bit operations ----------------------------------- bitAnd: aNumber @@ -2668,7 +3363,7 @@  File: gst-base.info, Node: LargeInteger-built-ins, Next: LargeInteger-coercion, Prev: LargeInteger-bit operations, Up: LargeInteger -1.92.4 LargeInteger: built-ins +1.95.4 LargeInteger: built-ins ------------------------------ at: anIndex @@ -2703,7 +3398,7 @@  File: gst-base.info, Node: LargeInteger-coercion, Next: LargeInteger-disabled, Prev: LargeInteger-built-ins, Up: LargeInteger -1.92.5 LargeInteger: coercion +1.95.5 LargeInteger: coercion ----------------------------- asCNumber @@ -2727,7 +3422,7 @@  File: gst-base.info, Node: LargeInteger-disabled, Next: LargeInteger-primitive operations, Prev: LargeInteger-coercion, Up: LargeInteger -1.92.6 LargeInteger: disabled +1.95.6 LargeInteger: disabled ----------------------------- asObject @@ -2741,7 +3436,7 @@  File: gst-base.info, Node: LargeInteger-primitive operations, Next: LargeInteger-testing, Prev: LargeInteger-disabled, Up: LargeInteger -1.92.7 LargeInteger: primitive operations +1.95.7 LargeInteger: primitive operations ----------------------------------------- basicLeftShift: totalShift @@ -2757,7 +3452,7 @@  File: gst-base.info, Node: LargeInteger-testing, Prev: LargeInteger-primitive operations, Up: LargeInteger -1.92.8 LargeInteger: testing +1.95.8 LargeInteger: testing ---------------------------- < aNumber @@ -2782,7 +3477,7 @@  File: gst-base.info, Node: LargeNegativeInteger, Next: LargePositiveInteger, Prev: LargeInteger, Up: Base classes -1.93 LargeNegativeInteger +1.96 LargeNegativeInteger ========================= Defined in namespace Smalltalk @@ -2802,7 +3497,7 @@  File: gst-base.info, Node: LargeNegativeInteger-converting, Next: LargeNegativeInteger-numeric testing, Up: LargeNegativeInteger -1.93.1 LargeNegativeInteger: converting +1.96.1 LargeNegativeInteger: converting --------------------------------------- asFloatD @@ -2818,7 +3513,7 @@  File: gst-base.info, Node: LargeNegativeInteger-numeric testing, Next: LargeNegativeInteger-reverting to LargePositiveInteger, Prev: LargeNegativeInteger-converting, Up: LargeNegativeInteger -1.93.2 LargeNegativeInteger: numeric testing +1.96.2 LargeNegativeInteger: numeric testing -------------------------------------------- abs @@ -2840,7 +3535,7 @@  File: gst-base.info, Node: LargeNegativeInteger-reverting to LargePositiveInteger, Prev: LargeNegativeInteger-numeric testing, Up: LargeNegativeInteger -1.93.3 LargeNegativeInteger: reverting to LargePositiveInteger +1.96.3 LargeNegativeInteger: reverting to LargePositiveInteger -------------------------------------------------------------- + aNumber @@ -2860,7 +3555,7 @@  File: gst-base.info, Node: LargePositiveInteger, Next: LargeWordArray, Prev: LargeNegativeInteger, Up: Base classes -1.94 LargePositiveInteger +1.97 LargePositiveInteger ========================= Defined in namespace Smalltalk @@ -2883,7 +3578,7 @@  File: gst-base.info, Node: LargePositiveInteger-arithmetic, Next: LargePositiveInteger-converting, Up: LargePositiveInteger -1.94.1 LargePositiveInteger: arithmetic +1.97.1 LargePositiveInteger: arithmetic --------------------------------------- + aNumber @@ -2902,7 +3597,7 @@  File: gst-base.info, Node: LargePositiveInteger-converting, Next: LargePositiveInteger-helper byte-level methods, Prev: LargePositiveInteger-arithmetic, Up: LargePositiveInteger -1.94.2 LargePositiveInteger: converting +1.97.2 LargePositiveInteger: converting --------------------------------------- asFloatD @@ -2922,7 +3617,7 @@  File: gst-base.info, Node: LargePositiveInteger-helper byte-level methods, Next: LargePositiveInteger-numeric testing, Prev: LargePositiveInteger-converting, Up: LargePositiveInteger -1.94.3 LargePositiveInteger: helper byte-level methods +1.97.3 LargePositiveInteger: helper byte-level methods ------------------------------------------------------ bytes: byteArray1 from: j compare: byteArray2 @@ -2967,7 +3662,7 @@  File: gst-base.info, Node: LargePositiveInteger-numeric testing, Next: LargePositiveInteger-primitive operations, Prev: LargePositiveInteger-helper byte-level methods, Up: LargePositiveInteger -1.94.4 LargePositiveInteger: numeric testing +1.97.4 LargePositiveInteger: numeric testing -------------------------------------------- abs @@ -2989,7 +3684,7 @@  File: gst-base.info, Node: LargePositiveInteger-primitive operations, Prev: LargePositiveInteger-numeric testing, Up: LargePositiveInteger -1.94.5 LargePositiveInteger: primitive operations +1.97.5 LargePositiveInteger: primitive operations ------------------------------------------------- divide: aNumber using: aBlock @@ -3008,7 +3703,7 @@  File: gst-base.info, Node: LargeWordArray, Next: LargeZeroInteger, Prev: LargePositiveInteger, Up: Base classes -1.95 LargeWordArray +1.98 LargeWordArray =================== Defined in namespace Smalltalk @@ -3024,7 +3719,7 @@  File: gst-base.info, Node: LargeWordArray-overridden, Up: LargeWordArray -1.95.1 LargeWordArray: overridden +1.98.1 LargeWordArray: overridden --------------------------------- defaultElement @@ -3037,7 +3732,7 @@  File: gst-base.info, Node: LargeZeroInteger, Next: Link, Prev: LargeWordArray, Up: Base classes -1.96 LargeZeroInteger +1.99 LargeZeroInteger ===================== Defined in namespace Smalltalk @@ -3060,7 +3755,7 @@  File: gst-base.info, Node: LargeZeroInteger-accessing, Next: LargeZeroInteger-arithmetic, Up: LargeZeroInteger -1.96.1 LargeZeroInteger: accessing +1.99.1 LargeZeroInteger: accessing ---------------------------------- at: anIndex @@ -3076,7 +3771,7 @@  File: gst-base.info, Node: LargeZeroInteger-arithmetic, Next: LargeZeroInteger-numeric testing, Prev: LargeZeroInteger-accessing, Up: LargeZeroInteger -1.96.2 LargeZeroInteger: arithmetic +1.99.2 LargeZeroInteger: arithmetic ----------------------------------- * aNumber @@ -3112,7 +3807,7 @@  File: gst-base.info, Node: LargeZeroInteger-numeric testing, Next: LargeZeroInteger-printing, Prev: LargeZeroInteger-arithmetic, Up: LargeZeroInteger -1.96.3 LargeZeroInteger: numeric testing +1.99.3 LargeZeroInteger: numeric testing ---------------------------------------- sign @@ -3125,7 +3820,7 @@  File: gst-base.info, Node: LargeZeroInteger-printing, Prev: LargeZeroInteger-numeric testing, Up: LargeZeroInteger -1.96.4 LargeZeroInteger: printing +1.99.4 LargeZeroInteger: printing --------------------------------- replace: str withStringBase: radix @@ -3135,8 +3830,8 @@  File: gst-base.info, Node: Link, Next: LinkedList, Prev: LargeZeroInteger, Up: Base classes -1.97 Link -========= +1.100 Link +========== Defined in namespace Smalltalk Superclass: Object @@ -3155,8 +3850,8 @@  File: gst-base.info, Node: Link class-instance creation, Next: Link-basic, Up: Link -1.97.1 Link class: instance creation ------------------------------------- +1.100.1 Link class: instance creation +------------------------------------- nextLink: aLink Create an instance with the given next link @@ -3165,8 +3860,8 @@  File: gst-base.info, Node: Link-basic, Next: Link-iteration, Prev: Link class-instance creation, Up: Link -1.97.2 Link: basic ------------------- +1.100.2 Link: basic +------------------- nextLink Answer the next item in the list @@ -3178,8 +3873,8 @@  File: gst-base.info, Node: Link-iteration, Prev: Link-basic, Up: Link -1.97.3 Link: iteration ----------------------- +1.100.3 Link: iteration +----------------------- at: index Retrieve a node (instance of Link) that is at a distance of `index' @@ -3198,8 +3893,8 @@  File: gst-base.info, Node: LinkedList, Next: LookupKey, Prev: Link, Up: Base classes -1.98 LinkedList -=============== +1.101 LinkedList +================ Defined in namespace Smalltalk Superclass: SequenceableCollection @@ -3219,8 +3914,8 @@  File: gst-base.info, Node: LinkedList-accessing, Next: LinkedList-adding, Up: LinkedList -1.98.1 LinkedList: accessing ----------------------------- +1.101.1 LinkedList: accessing +----------------------------- at: index Return the element that is index into the linked list. @@ -3232,8 +3927,8 @@  File: gst-base.info, Node: LinkedList-adding, Next: LinkedList-enumerating, Prev: LinkedList-accessing, Up: LinkedList -1.98.2 LinkedList: adding -------------------------- +1.101.2 LinkedList: adding +-------------------------- add: aLink Add aLink at the end of the list; return aLink. @@ -3260,8 +3955,8 @@  File: gst-base.info, Node: LinkedList-enumerating, Next: LinkedList-testing, Prev: LinkedList-adding, Up: LinkedList -1.98.3 LinkedList: enumerating ------------------------------- +1.101.3 LinkedList: enumerating +------------------------------- do: aBlock Enumerate each object in the list, passing it to aBlock (actual @@ -3277,8 +3972,8 @@  File: gst-base.info, Node: LinkedList-testing, Prev: LinkedList-enumerating, Up: LinkedList -1.98.4 LinkedList: testing --------------------------- +1.101.4 LinkedList: testing +--------------------------- isEmpty Returns true if the list contains no members @@ -3293,8 +3988,8 @@  File: gst-base.info, Node: LookupKey, Next: LookupTable, Prev: LinkedList, Up: Base classes -1.99 LookupKey -============== +1.102 LookupKey +=============== Defined in namespace Smalltalk Superclass: Magnitude @@ -3314,8 +4009,8 @@  File: gst-base.info, Node: LookupKey class-basic, Next: LookupKey-accessing, Up: LookupKey -1.99.1 LookupKey class: basic ------------------------------ +1.102.1 LookupKey class: basic +------------------------------ key: aKey Answer a new instance of the receiver with the given key and value @@ -3324,8 +4019,8 @@  File: gst-base.info, Node: LookupKey-accessing, Next: LookupKey-printing, Prev: LookupKey class-basic, Up: LookupKey -1.99.2 LookupKey: accessing ---------------------------- +1.102.2 LookupKey: accessing +---------------------------- key Answer the receiver's key @@ -3337,8 +4032,8 @@  File: gst-base.info, Node: LookupKey-printing, Next: LookupKey-storing, Prev: LookupKey-accessing, Up: LookupKey -1.99.3 LookupKey: printing --------------------------- +1.102.3 LookupKey: printing +--------------------------- printOn: aStream Put on aStream a representation of the receiver @@ -3347,8 +4042,8 @@  File: gst-base.info, Node: LookupKey-storing, Next: LookupKey-testing, Prev: LookupKey-printing, Up: LookupKey -1.99.4 LookupKey: storing -------------------------- +1.102.4 LookupKey: storing +-------------------------- storeOn: aStream Put on aStream some Smalltalk code compiling to the receiver @@ -3357,8 +4052,8 @@  File: gst-base.info, Node: LookupKey-testing, Prev: LookupKey-storing, Up: LookupKey -1.99.5 LookupKey: testing -------------------------- +1.102.5 LookupKey: testing +-------------------------- < aLookupKey Answer whether the receiver's key is less than aLookupKey's @@ -3375,7 +4070,7 @@  File: gst-base.info, Node: LookupTable, Next: Magnitude, Prev: LookupKey, Up: Base classes -1.100 LookupTable +1.103 LookupTable ================= Defined in namespace Smalltalk @@ -3401,7 +4096,7 @@  File: gst-base.info, Node: LookupTable class-instance creation, Next: LookupTable-accessing, Up: LookupTable -1.100.1 LookupTable class: instance creation +1.103.1 LookupTable class: instance creation -------------------------------------------- new @@ -3411,7 +4106,7 @@  File: gst-base.info, Node: LookupTable-accessing, Next: LookupTable-enumerating, Prev: LookupTable class-instance creation, Up: LookupTable -1.100.2 LookupTable: accessing +1.103.2 LookupTable: accessing ------------------------------ add: anAssociation @@ -3436,7 +4131,7 @@  File: gst-base.info, Node: LookupTable-enumerating, Next: LookupTable-hashing, Prev: LookupTable-accessing, Up: LookupTable -1.100.3 LookupTable: enumerating +1.103.3 LookupTable: enumerating -------------------------------- associationsDo: aBlock @@ -3456,7 +4151,7 @@  File: gst-base.info, Node: LookupTable-hashing, Next: LookupTable-rehashing, Prev: LookupTable-enumerating, Up: LookupTable -1.100.4 LookupTable: hashing +1.103.4 LookupTable: hashing ---------------------------- hash @@ -3466,7 +4161,7 @@  File: gst-base.info, Node: LookupTable-rehashing, Next: LookupTable-removing, Prev: LookupTable-hashing, Up: LookupTable -1.100.5 LookupTable: rehashing +1.103.5 LookupTable: rehashing ------------------------------ rehash @@ -3476,7 +4171,7 @@  File: gst-base.info, Node: LookupTable-removing, Next: LookupTable-storing, Prev: LookupTable-rehashing, Up: LookupTable -1.100.6 LookupTable: removing +1.103.6 LookupTable: removing ----------------------------- remove: anAssociation @@ -3493,7 +4188,7 @@  File: gst-base.info, Node: LookupTable-storing, Prev: LookupTable-removing, Up: LookupTable -1.100.7 LookupTable: storing +1.103.7 LookupTable: storing ---------------------------- storeOn: aStream @@ -3503,7 +4198,7 @@  File: gst-base.info, Node: Magnitude, Next: MappedCollection, Prev: LookupTable, Up: Base classes -1.101 Magnitude +1.104 Magnitude =============== Defined in namespace Smalltalk @@ -3521,7 +4216,7 @@  File: gst-base.info, Node: Magnitude-basic, Next: Magnitude-misc methods, Up: Magnitude -1.101.1 Magnitude: basic +1.104.1 Magnitude: basic ------------------------ < aMagnitude @@ -3543,7 +4238,7 @@  File: gst-base.info, Node: Magnitude-misc methods, Prev: Magnitude-basic, Up: Magnitude -1.101.2 Magnitude: misc methods +1.104.2 Magnitude: misc methods ------------------------------- between: min and: max @@ -3559,7 +4254,7 @@  File: gst-base.info, Node: MappedCollection, Next: Memory, Prev: Magnitude, Up: Base classes -1.102 MappedCollection +1.105 MappedCollection ====================== Defined in namespace Smalltalk @@ -3593,7 +4288,7 @@  File: gst-base.info, Node: MappedCollection class-instance creation, Next: MappedCollection-basic, Up: MappedCollection -1.102.1 MappedCollection class: instance creation +1.105.1 MappedCollection class: instance creation ------------------------------------------------- collection: aCollection map: aMap @@ -3608,7 +4303,7 @@  File: gst-base.info, Node: MappedCollection-basic, Prev: MappedCollection class-instance creation, Up: MappedCollection -1.102.2 MappedCollection: basic +1.105.2 MappedCollection: basic ------------------------------- add: anObject @@ -3672,7 +4367,7 @@  File: gst-base.info, Node: Memory, Next: Message, Prev: MappedCollection, Up: Base classes -1.103 Memory +1.106 Memory ============ Defined in namespace Smalltalk @@ -3691,7 +4386,7 @@  File: gst-base.info, Node: Memory class-accessing, Up: Memory -1.103.1 Memory class: accessing +1.106.1 Memory class: accessing ------------------------------- at: anAddress @@ -3818,7 +4513,7 @@  File: gst-base.info, Node: Message, Next: MessageNotUnderstood, Prev: Memory, Up: Base classes -1.104 Message +1.107 Message ============= Defined in namespace Smalltalk @@ -3840,7 +4535,7 @@  File: gst-base.info, Node: Message class-creating instances, Next: Message-accessing, Up: Message -1.104.1 Message class: creating instances +1.107.1 Message class: creating instances ----------------------------------------- selector: aSymbol argument: anObject @@ -3853,7 +4548,7 @@  File: gst-base.info, Node: Message-accessing, Next: Message-basic, Prev: Message class-creating instances, Up: Message -1.104.2 Message: accessing +1.107.2 Message: accessing -------------------------- argument @@ -3875,7 +4570,7 @@  File: gst-base.info, Node: Message-basic, Next: Message-printing, Prev: Message-accessing, Up: Message -1.104.3 Message: basic +1.107.3 Message: basic ---------------------- printAsAttributeOn: aStream @@ -3886,7 +4581,7 @@  File: gst-base.info, Node: Message-printing, Prev: Message-basic, Up: Message -1.104.4 Message: printing +1.107.4 Message: printing ------------------------- printOn: aStream @@ -3902,7 +4597,7 @@  File: gst-base.info, Node: MessageNotUnderstood, Next: Metaclass, Prev: Message, Up: Base classes -1.105 MessageNotUnderstood +1.108 MessageNotUnderstood ========================== Defined in namespace Smalltalk @@ -3920,7 +4615,7 @@  File: gst-base.info, Node: MessageNotUnderstood-accessing, Next: MessageNotUnderstood-description, Up: MessageNotUnderstood -1.105.1 MessageNotUnderstood: accessing +1.108.1 MessageNotUnderstood: accessing --------------------------------------- message @@ -3933,7 +4628,7 @@  File: gst-base.info, Node: MessageNotUnderstood-description, Prev: MessageNotUnderstood-accessing, Up: MessageNotUnderstood -1.105.2 MessageNotUnderstood: description +1.108.2 MessageNotUnderstood: description ----------------------------------------- description @@ -3943,7 +4638,7 @@  File: gst-base.info, Node: Metaclass, Next: MethodContext, Prev: MessageNotUnderstood, Up: Base classes -1.106 Metaclass +1.109 Metaclass =============== Defined in namespace Smalltalk @@ -3962,6 +4657,7 @@ * Metaclass class-instance creation:: (class) * Metaclass-accessing:: (instance) * Metaclass-basic:: (instance) +* Metaclass-compiling methods:: (instance) * Metaclass-delegation:: (instance) * Metaclass-filing:: (instance) * Metaclass-printing:: (instance) @@ -3970,7 +4666,7 @@  File: gst-base.info, Node: Metaclass class-instance creation, Next: Metaclass-accessing, Up: Metaclass -1.106.1 Metaclass class: instance creation +1.109.1 Metaclass class: instance creation ------------------------------------------ subclassOf: superMeta @@ -3980,7 +4676,7 @@  File: gst-base.info, Node: Metaclass-accessing, Next: Metaclass-basic, Prev: Metaclass class-instance creation, Up: Metaclass -1.106.2 Metaclass: accessing +1.109.2 Metaclass: accessing ---------------------------- instanceClass @@ -3996,9 +4692,9 @@  -File: gst-base.info, Node: Metaclass-basic, Next: Metaclass-delegation, Prev: Metaclass-accessing, Up: Metaclass +File: gst-base.info, Node: Metaclass-basic, Next: Metaclass-compiling methods, Prev: Metaclass-accessing, Up: Metaclass -1.106.3 Metaclass: basic +1.109.3 Metaclass: basic ------------------------ name: className environment: aNamespace subclassOf: theSuperclass @@ -4020,9 +4716,19 @@  -File: gst-base.info, Node: Metaclass-delegation, Next: Metaclass-filing, Prev: Metaclass-basic, Up: Metaclass +File: gst-base.info, Node: Metaclass-compiling methods, Next: Metaclass-delegation, Prev: Metaclass-basic, Up: Metaclass + +1.109.4 Metaclass: compiling methods +------------------------------------ + +poolResolution + Use my instance's poolResolution. + + + +File: gst-base.info, Node: Metaclass-delegation, Next: Metaclass-filing, Prev: Metaclass-compiling methods, Up: Metaclass -1.106.4 Metaclass: delegation +1.109.5 Metaclass: delegation ----------------------------- addClassVarName: aString @@ -4037,6 +4743,10 @@ Answer the names of the variables in the receiver's class pool dictionary and in each of the superclasses' class pool dictionaries +allSharedPoolDictionariesDo: aBlock + Answer the shared pools visible from methods in the metaclass, in + the correct search order. + allSharedPools Return the names of the shared pools defined by the class and any of its superclasses @@ -4081,7 +4791,7 @@  File: gst-base.info, Node: Metaclass-filing, Next: Metaclass-printing, Prev: Metaclass-delegation, Up: Metaclass -1.106.5 Metaclass: filing +1.109.6 Metaclass: filing ------------------------- fileOutOn: aFileStream @@ -4092,7 +4802,7 @@  File: gst-base.info, Node: Metaclass-printing, Next: Metaclass-testing functionality, Prev: Metaclass-filing, Up: Metaclass -1.106.6 Metaclass: printing +1.109.7 Metaclass: printing --------------------------- nameIn: aNamespace @@ -4112,7 +4822,7 @@  File: gst-base.info, Node: Metaclass-testing functionality, Prev: Metaclass-printing, Up: Metaclass -1.106.7 Metaclass: testing functionality +1.109.8 Metaclass: testing functionality ---------------------------------------- asClass @@ -4125,7 +4835,7 @@  File: gst-base.info, Node: MethodContext, Next: MethodDictionary, Prev: Metaclass, Up: Base classes -1.107 MethodContext +1.110 MethodContext =================== Defined in namespace Smalltalk @@ -4144,7 +4854,7 @@  File: gst-base.info, Node: MethodContext-accessing, Next: MethodContext-debugging, Up: MethodContext -1.107.1 MethodContext: accessing +1.110.1 MethodContext: accessing -------------------------------- home @@ -4176,6 +4886,12 @@ a call to the #continue: method of ContextPart). Such contexts are created only by #ensure:. +mark + To create a valid execution environment for the interpreter even + before it starts, GST creates a fake context which invokes a + special "termination" method. A similar context is created by + #valueWithUnwind, by using this method. + sender Return the context from which the receiver was sent @@ -4183,7 +4899,7 @@  File: gst-base.info, Node: MethodContext-debugging, Next: MethodContext-printing, Prev: MethodContext-accessing, Up: MethodContext -1.107.2 MethodContext: debugging +1.110.2 MethodContext: debugging -------------------------------- isInternalExceptionHandlingContext @@ -4202,7 +4918,7 @@  File: gst-base.info, Node: MethodContext-printing, Prev: MethodContext-debugging, Up: MethodContext -1.107.3 MethodContext: printing +1.110.3 MethodContext: printing ------------------------------- printOn: aStream @@ -4212,7 +4928,7 @@  File: gst-base.info, Node: MethodDictionary, Next: MethodInfo, Prev: MethodContext, Up: Base classes -1.108 MethodDictionary +1.111 MethodDictionary ====================== Defined in namespace Smalltalk @@ -4231,7 +4947,7 @@  File: gst-base.info, Node: MethodDictionary-adding, Next: MethodDictionary-rehashing, Up: MethodDictionary -1.108.1 MethodDictionary: adding +1.111.1 MethodDictionary: adding -------------------------------- at: key put: value @@ -4241,7 +4957,7 @@  File: gst-base.info, Node: MethodDictionary-rehashing, Next: MethodDictionary-removing, Prev: MethodDictionary-adding, Up: MethodDictionary -1.108.2 MethodDictionary: rehashing +1.111.2 MethodDictionary: rehashing ----------------------------------- rehash @@ -4251,7 +4967,7 @@  File: gst-base.info, Node: MethodDictionary-removing, Prev: MethodDictionary-rehashing, Up: MethodDictionary -1.108.3 MethodDictionary: removing +1.111.3 MethodDictionary: removing ---------------------------------- remove: anAssociation @@ -4265,7 +4981,7 @@  File: gst-base.info, Node: MethodInfo, Next: Namespace, Prev: MethodDictionary, Up: Base classes -1.109 MethodInfo +1.112 MethodInfo ================ Defined in namespace Smalltalk @@ -4283,7 +4999,7 @@  File: gst-base.info, Node: MethodInfo-accessing, Next: MethodInfo-equality, Up: MethodInfo -1.109.1 MethodInfo: accessing +1.112.1 MethodInfo: accessing ----------------------------- category @@ -4325,7 +5041,7 @@  File: gst-base.info, Node: MethodInfo-equality, Prev: MethodInfo-accessing, Up: MethodInfo -1.109.2 MethodInfo: equality +1.112.2 MethodInfo: equality ---------------------------- = aMethodInfo @@ -4338,7 +5054,7 @@  File: gst-base.info, Node: Namespace, Next: NetClients.URIResolver, Prev: MethodInfo, Up: Base classes -1.110 Namespace +1.113 Namespace =============== Defined in namespace Smalltalk @@ -4359,7 +5075,7 @@  File: gst-base.info, Node: Namespace class-accessing, Next: Namespace class-disabling instance creation, Up: Namespace -1.110.1 Namespace class: accessing +1.113.1 Namespace class: accessing ---------------------------------- current @@ -4373,7 +5089,7 @@  File: gst-base.info, Node: Namespace class-disabling instance creation, Next: Namespace class-initialization, Prev: Namespace class-accessing, Up: Namespace -1.110.2 Namespace class: disabling instance creation +1.113.2 Namespace class: disabling instance creation ---------------------------------------------------- new @@ -4386,7 +5102,7 @@  File: gst-base.info, Node: Namespace class-initialization, Next: Namespace-accessing, Prev: Namespace class-disabling instance creation, Up: Namespace -1.110.3 Namespace class: initialization +1.113.3 Namespace class: initialization --------------------------------------- initialize @@ -4398,7 +5114,7 @@  File: gst-base.info, Node: Namespace-accessing, Next: Namespace-namespace hierarchy, Prev: Namespace class-initialization, Up: Namespace -1.110.4 Namespace: accessing +1.113.4 Namespace: accessing ---------------------------- inheritedKeys @@ -4408,7 +5124,7 @@  File: gst-base.info, Node: Namespace-namespace hierarchy, Next: Namespace-overrides for superspaces, Prev: Namespace-accessing, Up: Namespace -1.110.5 Namespace: namespace hierarchy +1.113.5 Namespace: namespace hierarchy -------------------------------------- siblings @@ -4424,7 +5140,7 @@  File: gst-base.info, Node: Namespace-overrides for superspaces, Next: Namespace-printing, Prev: Namespace-namespace hierarchy, Up: Namespace -1.110.6 Namespace: overrides for superspaces +1.113.6 Namespace: overrides for superspaces -------------------------------------------- associationAt: key ifAbsent: aBlock @@ -4475,7 +5191,7 @@  File: gst-base.info, Node: Namespace-printing, Prev: Namespace-overrides for superspaces, Up: Namespace -1.110.7 Namespace: printing +1.113.7 Namespace: printing --------------------------- nameIn: aNamespace @@ -4493,7 +5209,7 @@  File: gst-base.info, Node: NetClients.URIResolver, Next: NetClients.URL, Prev: Namespace, Up: Base classes -1.111 NetClients.URIResolver +1.114 NetClients.URIResolver ============================ Defined in namespace Smalltalk.NetClients @@ -4509,7 +5225,7 @@  File: gst-base.info, Node: NetClients.URIResolver class-api, Next: NetClients.URIResolver class-instance creation, Up: NetClients.URIResolver -1.111.1 NetClients.URIResolver class: api +1.114.1 NetClients.URIResolver class: api ----------------------------------------- openOn: aURI @@ -4537,7 +5253,7 @@  File: gst-base.info, Node: NetClients.URIResolver class-instance creation, Prev: NetClients.URIResolver class-api, Up: NetClients.URIResolver -1.111.2 NetClients.URIResolver class: instance creation +1.114.2 NetClients.URIResolver class: instance creation ------------------------------------------------------- on: anURL @@ -4548,7 +5264,7 @@  File: gst-base.info, Node: NetClients.URL, Next: Notification, Prev: NetClients.URIResolver, Up: Base classes -1.112 NetClients.URL +1.115 NetClients.URL ==================== Defined in namespace Smalltalk.NetClients @@ -4566,13 +5282,14 @@ * NetClients.URL-copying:: (instance) * NetClients.URL-initialize-release:: (instance) * NetClients.URL-printing:: (instance) +* NetClients.URL-still unclassified:: (instance) * NetClients.URL-testing:: (instance) * NetClients.URL-utilities:: (instance)  File: gst-base.info, Node: NetClients.URL class-encoding URLs, Next: NetClients.URL class-instance creation, Up: NetClients.URL -1.112.1 NetClients.URL class: encoding URLs +1.115.1 NetClients.URL class: encoding URLs ------------------------------------------- decode: aString @@ -4590,7 +5307,7 @@  File: gst-base.info, Node: NetClients.URL class-instance creation, Next: NetClients.URL-accessing, Prev: NetClients.URL class-encoding URLs, Up: NetClients.URL -1.112.2 NetClients.URL class: instance creation +1.115.2 NetClients.URL class: instance creation ----------------------------------------------- fromString: aString @@ -4612,7 +5329,7 @@  File: gst-base.info, Node: NetClients.URL-accessing, Next: NetClients.URL-comparing, Prev: NetClients.URL class-instance creation, Up: NetClients.URL -1.112.3 NetClients.URL: accessing +1.115.3 NetClients.URL: accessing --------------------------------- decodedFields @@ -4713,7 +5430,7 @@  File: gst-base.info, Node: NetClients.URL-comparing, Next: NetClients.URL-copying, Prev: NetClients.URL-accessing, Up: NetClients.URL -1.112.4 NetClients.URL: comparing +1.115.4 NetClients.URL: comparing --------------------------------- = anURL @@ -4729,7 +5446,7 @@  File: gst-base.info, Node: NetClients.URL-copying, Next: NetClients.URL-initialize-release, Prev: NetClients.URL-comparing, Up: NetClients.URL -1.112.5 NetClients.URL: copying +1.115.5 NetClients.URL: copying ------------------------------- copyWithoutAuxiliaryParts @@ -4747,7 +5464,7 @@  File: gst-base.info, Node: NetClients.URL-initialize-release, Next: NetClients.URL-printing, Prev: NetClients.URL-copying, Up: NetClients.URL -1.112.6 NetClients.URL: initialize-release +1.115.6 NetClients.URL: initialize-release ------------------------------------------ initialize @@ -4755,9 +5472,9 @@  -File: gst-base.info, Node: NetClients.URL-printing, Next: NetClients.URL-testing, Prev: NetClients.URL-initialize-release, Up: NetClients.URL +File: gst-base.info, Node: NetClients.URL-printing, Next: NetClients.URL-still unclassified, Prev: NetClients.URL-initialize-release, Up: NetClients.URL -1.112.7 NetClients.URL: printing +1.115.7 NetClients.URL: printing -------------------------------- printOn: stream @@ -4765,10 +5482,23 @@  -File: gst-base.info, Node: NetClients.URL-testing, Next: NetClients.URL-utilities, Prev: NetClients.URL-printing, Up: NetClients.URL +File: gst-base.info, Node: NetClients.URL-still unclassified, Next: NetClients.URL-testing, Prev: NetClients.URL-printing, Up: NetClients.URL + +1.115.8 NetClients.URL: still unclassified +------------------------------------------ + +contents + Not commented. + +readStream + Not commented. -1.112.8 NetClients.URL: testing -------------------------------- + + +File: gst-base.info, Node: NetClients.URL-testing, Next: NetClients.URL-utilities, Prev: NetClients.URL-still unclassified, Up: NetClients.URL + +1.115.9 NetClients.URL: testing +------------------------------- canCache Answer whether the URL is cacheable. The current implementation @@ -4793,8 +5523,8 @@  File: gst-base.info, Node: NetClients.URL-utilities, Prev: NetClients.URL-testing, Up: NetClients.URL -1.112.9 NetClients.URL: utilities ---------------------------------- +1.115.10 NetClients.URL: utilities +---------------------------------- construct: anURL Construct an absolute URL based on the relative URL anURL and the @@ -4804,7 +5534,7 @@  File: gst-base.info, Node: Notification, Next: NullProxy, Prev: NetClients.URL, Up: Base classes -1.113 Notification +1.116 Notification ================== Defined in namespace Smalltalk @@ -4821,7 +5551,7 @@  File: gst-base.info, Node: Notification-exception description, Up: Notification -1.113.1 Notification: exception description +1.116.1 Notification: exception description ------------------------------------------- defaultAction @@ -4838,7 +5568,7 @@  File: gst-base.info, Node: NullProxy, Next: NullValueHolder, Prev: Notification, Up: Base classes -1.114 NullProxy +1.117 NullProxy =============== Defined in namespace Smalltalk @@ -4858,7 +5588,7 @@  File: gst-base.info, Node: NullProxy class-instance creation, Next: NullProxy-accessing, Up: NullProxy -1.114.1 NullProxy class: instance creation +1.117.1 NullProxy class: instance creation ------------------------------------------ loadFrom: anObjectDumper @@ -4868,7 +5598,7 @@  File: gst-base.info, Node: NullProxy-accessing, Prev: NullProxy class-instance creation, Up: NullProxy -1.114.2 NullProxy: accessing +1.117.2 NullProxy: accessing ---------------------------- dumpTo: anObjectDumper @@ -4878,7 +5608,7 @@  File: gst-base.info, Node: NullValueHolder, Next: Number, Prev: NullProxy, Up: Base classes -1.115 NullValueHolder +1.118 NullValueHolder ===================== Defined in namespace Smalltalk @@ -4897,7 +5627,7 @@  File: gst-base.info, Node: NullValueHolder class-creating instances, Next: NullValueHolder-accessing, Up: NullValueHolder -1.115.1 NullValueHolder class: creating instances +1.118.1 NullValueHolder class: creating instances ------------------------------------------------- new @@ -4910,7 +5640,7 @@  File: gst-base.info, Node: NullValueHolder-accessing, Prev: NullValueHolder class-creating instances, Up: NullValueHolder -1.115.2 NullValueHolder: accessing +1.118.2 NullValueHolder: accessing ---------------------------------- value @@ -4923,7 +5653,7 @@  File: gst-base.info, Node: Number, Next: Object, Prev: NullValueHolder, Up: Base classes -1.116 Number +1.119 Number ============ Defined in namespace Smalltalk @@ -4953,7 +5683,7 @@  File: gst-base.info, Node: Number class-converting, Next: Number class-testing, Up: Number -1.116.1 Number class: converting +1.119.1 Number class: converting -------------------------------- coerce: aNumber @@ -4968,7 +5698,7 @@  File: gst-base.info, Node: Number class-testing, Next: Number-arithmetic, Prev: Number class-converting, Up: Number -1.116.2 Number class: testing +1.119.2 Number class: testing ----------------------------- isImmediate @@ -4978,7 +5708,7 @@  File: gst-base.info, Node: Number-arithmetic, Next: Number-coercion, Prev: Number class-testing, Up: Number -1.116.3 Number: arithmetic +1.119.3 Number: arithmetic -------------------------- * aNumber @@ -5022,7 +5752,7 @@  File: gst-base.info, Node: Number-coercion, Next: Number-comparing, Prev: Number-arithmetic, Up: Number -1.116.4 Number: coercion +1.119.4 Number: coercion ------------------------ asCNumber @@ -5033,7 +5763,7 @@  File: gst-base.info, Node: Number-comparing, Next: Number-converting, Prev: Number-coercion, Up: Number -1.116.5 Number: comparing +1.119.5 Number: comparing ------------------------- max: aNumber @@ -5050,7 +5780,7 @@  File: gst-base.info, Node: Number-converting, Next: Number-copying, Prev: Number-comparing, Up: Number -1.116.6 Number: converting +1.119.6 Number: converting -------------------------- asFloat @@ -5105,7 +5835,7 @@  File: gst-base.info, Node: Number-copying, Next: Number-error raising, Prev: Number-converting, Up: Number -1.116.7 Number: copying +1.119.7 Number: copying ----------------------- deepCopy @@ -5118,7 +5848,7 @@  File: gst-base.info, Node: Number-error raising, Next: Number-misc math, Prev: Number-copying, Up: Number -1.116.8 Number: error raising +1.119.8 Number: error raising ----------------------------- arithmeticError: msg @@ -5132,7 +5862,7 @@  File: gst-base.info, Node: Number-misc math, Next: Number-point creation, Prev: Number-error raising, Up: Number -1.116.9 Number: misc math +1.119.9 Number: misc math ------------------------- abs @@ -5228,7 +5958,7 @@  File: gst-base.info, Node: Number-point creation, Next: Number-retrying, Prev: Number-misc math, Up: Number -1.116.10 Number: point creation +1.119.10 Number: point creation ------------------------------- @ y @@ -5241,7 +5971,7 @@  File: gst-base.info, Node: Number-retrying, Next: Number-shortcuts and iterators, Prev: Number-point creation, Up: Number -1.116.11 Number: retrying +1.119.11 Number: retrying ------------------------- retry: aSymbol coercing: aNumber @@ -5287,7 +6017,7 @@  File: gst-base.info, Node: Number-shortcuts and iterators, Next: Number-testing, Prev: Number-retrying, Up: Number -1.116.12 Number: shortcuts and iterators +1.119.12 Number: shortcuts and iterators ---------------------------------------- to: stop @@ -5322,7 +6052,7 @@  File: gst-base.info, Node: Number-testing, Next: Number-truncation and round off, Prev: Number-shortcuts and iterators, Up: Number -1.116.13 Number: testing +1.119.13 Number: testing ------------------------ closeTo: num @@ -5373,7 +6103,7 @@  File: gst-base.info, Node: Number-truncation and round off, Prev: Number-testing, Up: Number -1.116.14 Number: truncation and round off +1.119.14 Number: truncation and round off ----------------------------------------- asInteger @@ -5406,7 +6136,7 @@  File: gst-base.info, Node: Object, Next: ObjectDumper, Prev: Number, Up: Base classes -1.117 Object +1.120 Object ============ Defined in namespace Smalltalk @@ -5438,7 +6168,7 @@  File: gst-base.info, Node: Object class-initialization, Next: Object-built ins, Up: Object -1.117.1 Object class: initialization +1.120.1 Object class: initialization ------------------------------------ dependencies @@ -5462,7 +6192,7 @@  File: gst-base.info, Node: Object-built ins, Next: Object-change and update, Prev: Object class-initialization, Up: Object -1.117.2 Object: built ins +1.120.2 Object: built ins ------------------------- = arg @@ -5689,7 +6419,7 @@  File: gst-base.info, Node: Object-change and update, Next: Object-class type methods, Prev: Object-built ins, Up: Object -1.117.3 Object: change and update +1.120.3 Object: change and update --------------------------------- broadcast: aSymbol @@ -5727,7 +6457,7 @@  File: gst-base.info, Node: Object-class type methods, Next: Object-conversion, Prev: Object-change and update, Up: Object -1.117.4 Object: class type methods +1.120.4 Object: class type methods ---------------------------------- species @@ -5748,7 +6478,7 @@  File: gst-base.info, Node: Object-conversion, Next: Object-copying, Prev: Object-class type methods, Up: Object -1.117.5 Object: conversion +1.120.5 Object: conversion -------------------------- asValue @@ -5758,7 +6488,7 @@  File: gst-base.info, Node: Object-copying, Next: Object-debugging, Prev: Object-conversion, Up: Object -1.117.6 Object: copying +1.120.6 Object: copying ----------------------- copy @@ -5779,7 +6509,7 @@  File: gst-base.info, Node: Object-debugging, Next: Object-dependents access, Prev: Object-copying, Up: Object -1.117.7 Object: debugging +1.120.7 Object: debugging ------------------------- inspect @@ -5792,7 +6522,7 @@  File: gst-base.info, Node: Object-dependents access, Next: Object-error raising, Prev: Object-debugging, Up: Object -1.117.8 Object: dependents access +1.120.8 Object: dependents access --------------------------------- addDependent: anObject @@ -5814,7 +6544,7 @@  File: gst-base.info, Node: Object-error raising, Next: Object-finalization, Prev: Object-dependents access, Up: Object -1.117.9 Object: error raising +1.120.9 Object: error raising ----------------------------- doesNotUnderstand: aMessage @@ -5835,7 +6565,7 @@  File: gst-base.info, Node: Object-finalization, Next: Object-printing, Prev: Object-error raising, Up: Object -1.117.10 Object: finalization +1.120.10 Object: finalization ----------------------------- addToBeFinalized @@ -5863,7 +6593,7 @@  File: gst-base.info, Node: Object-printing, Next: Object-relational operators, Prev: Object-finalization, Up: Object -1.117.11 Object: printing +1.120.11 Object: printing ------------------------- basicPrintNl @@ -5917,7 +6647,7 @@  File: gst-base.info, Node: Object-relational operators, Next: Object-saving and loading, Prev: Object-printing, Up: Object -1.117.12 Object: relational operators +1.120.12 Object: relational operators ------------------------------------- ~= anObject @@ -5930,7 +6660,7 @@  File: gst-base.info, Node: Object-saving and loading, Next: Object-storing, Prev: Object-relational operators, Up: Object -1.117.13 Object: saving and loading +1.120.13 Object: saving and loading ----------------------------------- binaryRepresentationObject @@ -5959,7 +6689,7 @@  File: gst-base.info, Node: Object-storing, Next: Object-syntax shortcuts, Prev: Object-saving and loading, Up: Object -1.117.14 Object: storing +1.120.14 Object: storing ------------------------ store @@ -5983,7 +6713,7 @@  File: gst-base.info, Node: Object-syntax shortcuts, Next: Object-testing functionality, Prev: Object-storing, Up: Object -1.117.15 Object: syntax shortcuts +1.120.15 Object: syntax shortcuts --------------------------------- -> anObject @@ -5994,7 +6724,7 @@  File: gst-base.info, Node: Object-testing functionality, Next: Object-VM callbacks, Prev: Object-syntax shortcuts, Up: Object -1.117.16 Object: testing functionality +1.120.16 Object: testing functionality -------------------------------------- ifNil: nilBlock @@ -6018,6 +6748,9 @@ isBehavior Answer `false'. +isCObject + Answer `false'. + isCharacter Answer `false'. @@ -6077,7 +6810,7 @@  File: gst-base.info, Node: Object-VM callbacks, Prev: Object-testing functionality, Up: Object -1.117.17 Object: VM callbacks +1.120.17 Object: VM callbacks ----------------------------- badReturnError @@ -6097,7 +6830,7 @@  File: gst-base.info, Node: ObjectDumper, Next: ObjectMemory, Prev: Object, Up: Base classes -1.118 ObjectDumper +1.121 ObjectDumper ================== Defined in namespace Smalltalk @@ -6128,7 +6861,7 @@  File: gst-base.info, Node: ObjectDumper class-establishing proxy classes, Next: ObjectDumper class-instance creation, Up: ObjectDumper -1.118.1 ObjectDumper class: establishing proxy classes +1.121.1 ObjectDumper class: establishing proxy classes ------------------------------------------------------ disableProxyFor: aClass @@ -6154,7 +6887,7 @@  File: gst-base.info, Node: ObjectDumper class-instance creation, Next: ObjectDumper class-shortcuts, Prev: ObjectDumper class-establishing proxy classes, Up: ObjectDumper -1.118.2 ObjectDumper class: instance creation +1.121.2 ObjectDumper class: instance creation --------------------------------------------- new @@ -6167,7 +6900,7 @@  File: gst-base.info, Node: ObjectDumper class-shortcuts, Next: ObjectDumper class-testing, Prev: ObjectDumper class-instance creation, Up: ObjectDumper -1.118.3 ObjectDumper class: shortcuts +1.121.3 ObjectDumper class: shortcuts ------------------------------------- dump: anObject to: aFileStream @@ -6180,7 +6913,7 @@  File: gst-base.info, Node: ObjectDumper class-testing, Next: ObjectDumper-accessing, Prev: ObjectDumper class-shortcuts, Up: ObjectDumper -1.118.4 ObjectDumper class: testing +1.121.4 ObjectDumper class: testing ----------------------------------- example @@ -6193,7 +6926,7 @@  File: gst-base.info, Node: ObjectDumper-accessing, Next: ObjectDumper-loading/dumping objects, Prev: ObjectDumper class-testing, Up: ObjectDumper -1.118.5 ObjectDumper: accessing +1.121.5 ObjectDumper: accessing ------------------------------- flush @@ -6211,7 +6944,7 @@  File: gst-base.info, Node: ObjectDumper-loading/dumping objects, Next: ObjectDumper-stream interface, Prev: ObjectDumper-accessing, Up: ObjectDumper -1.118.6 ObjectDumper: loading/dumping objects +1.121.6 ObjectDumper: loading/dumping objects --------------------------------------------- dump: anObject @@ -6226,7 +6959,7 @@  File: gst-base.info, Node: ObjectDumper-stream interface, Prev: ObjectDumper-loading/dumping objects, Up: ObjectDumper -1.118.7 ObjectDumper: stream interface +1.121.7 ObjectDumper: stream interface -------------------------------------- atEnd @@ -6242,7 +6975,7 @@  File: gst-base.info, Node: ObjectMemory, Next: OrderedCollection, Prev: ObjectDumper, Up: Base classes -1.119 ObjectMemory +1.122 ObjectMemory ================== Defined in namespace Smalltalk @@ -6272,7 +7005,7 @@  File: gst-base.info, Node: ObjectMemory class-accessing, Next: ObjectMemory class-builtins, Up: ObjectMemory -1.119.1 ObjectMemory class: accessing +1.122.1 ObjectMemory class: accessing ------------------------------------- current @@ -6282,7 +7015,7 @@  File: gst-base.info, Node: ObjectMemory class-builtins, Next: ObjectMemory class-initialization, Prev: ObjectMemory class-accessing, Up: ObjectMemory -1.119.2 ObjectMemory class: builtins +1.122.2 ObjectMemory class: builtins ------------------------------------ abort @@ -6365,9 +7098,6 @@ updating the averages, 1 disables the smoothing (the statistics return the last value). -snapshot: aString - Save an image on the aString file - spaceGrowRate Answer the rate with which the amount of memory used by the system grows @@ -6380,7 +7110,7 @@  File: gst-base.info, Node: ObjectMemory class-initialization, Next: ObjectMemory class-saving the image, Prev: ObjectMemory class-builtins, Up: ObjectMemory -1.119.3 ObjectMemory class: initialization +1.122.3 ObjectMemory class: initialization ------------------------------------------ changed: aSymbol @@ -6393,17 +7123,20 @@  File: gst-base.info, Node: ObjectMemory class-saving the image, Next: ObjectMemory-accessing, Prev: ObjectMemory class-initialization, Up: ObjectMemory -1.119.4 ObjectMemory class: saving the image +1.122.4 ObjectMemory class: saving the image -------------------------------------------- snapshot Save a snapshot on the image file that was loaded on startup. +snapshot: aString + Save an image on the aString file +  File: gst-base.info, Node: ObjectMemory-accessing, Next: ObjectMemory-builtins, Prev: ObjectMemory class-saving the image, Up: ObjectMemory -1.119.5 ObjectMemory: accessing +1.122.5 ObjectMemory: accessing ------------------------------- allocFailures @@ -6551,7 +7284,7 @@  File: gst-base.info, Node: ObjectMemory-builtins, Next: ObjectMemory-derived information, Prev: ObjectMemory-accessing, Up: ObjectMemory -1.119.6 ObjectMemory: builtins +1.122.6 ObjectMemory: builtins ------------------------------ update @@ -6561,7 +7294,7 @@  File: gst-base.info, Node: ObjectMemory-derived information, Prev: ObjectMemory-builtins, Up: ObjectMemory -1.119.7 ObjectMemory: derived information +1.122.7 ObjectMemory: derived information ----------------------------------------- scavengesBeforeTenuring @@ -6581,7 +7314,7 @@  File: gst-base.info, Node: OrderedCollection, Next: Package, Prev: ObjectMemory, Up: Base classes -1.120 OrderedCollection +1.123 OrderedCollection ======================= Defined in namespace Smalltalk @@ -6602,7 +7335,7 @@  File: gst-base.info, Node: OrderedCollection class-instance creation, Next: OrderedCollection-accessing, Up: OrderedCollection -1.120.1 OrderedCollection class: instance creation +1.123.1 OrderedCollection class: instance creation -------------------------------------------------- new @@ -6615,7 +7348,7 @@  File: gst-base.info, Node: OrderedCollection-accessing, Next: OrderedCollection-adding, Prev: OrderedCollection class-instance creation, Up: OrderedCollection -1.120.2 OrderedCollection: accessing +1.123.2 OrderedCollection: accessing ------------------------------------ at: anIndex @@ -6625,6 +7358,12 @@ Store anObject at the anIndex-th item of the receiver, answer anObject +first + Answer the first item of the receiver + +last + Answer the last item of the receiver + size Return the number of objects in the receiver @@ -6632,7 +7371,7 @@  File: gst-base.info, Node: OrderedCollection-adding, Next: OrderedCollection-removing, Prev: OrderedCollection-accessing, Up: OrderedCollection -1.120.3 OrderedCollection: adding +1.123.3 OrderedCollection: adding --------------------------------- add: anObject @@ -6654,3469 +7393,2807 @@ Add newObject in the receiver just before the i-th, answer it. Fail if i < 1 or i > self size + 1 -addAll: aCollection - Add every item of aCollection to the receiver, answer it - -addAll: newCollection after: oldObject - Add every item of newCollection to the receiver just after - oldObject, answer it. Fail if oldObject is not found - -addAll: newCollection afterIndex: i - Add every item of newCollection to the receiver just after the - i-th, answer it. Fail if i < 0 or i > self size - -addAll: newCollection before: oldObject - Add every item of newCollection to the receiver just before - oldObject, answer it. Fail if oldObject is not found - -addAll: newCollection beforeIndex: i - Add every item of newCollection to the receiver just before the - i-th, answer it. Fail if i < 1 or i > self size + 1 - -addAllFirst: aCollection - Add every item of newCollection to the receiver right at the start - of the receiver. Answer aCollection - -addAllLast: aCollection - Add every item of newCollection to the receiver right at the end - of the receiver. Answer aCollection - -addFirst: newObject - Add newObject to the receiver right at the start of the receiver. - Answer newObject - -addLast: newObject - Add newObject to the receiver right at the end of the receiver. - Answer newObject - - - -File: gst-base.info, Node: OrderedCollection-removing, Prev: OrderedCollection-adding, Up: OrderedCollection - -1.120.4 OrderedCollection: removing ------------------------------------ - -remove: anObject ifAbsent: aBlock - Remove anObject from the receiver. If it can't be found, answer the - result of evaluating aBlock - -removeAtIndex: anIndex - Remove the object at index anIndex from the receiver. Fail if the - index is out of bounds. - -removeFirst - Remove an object from the start of the receiver. Fail if the - receiver is empty - -removeLast - Remove an object from the end of the receiver. Fail if the receiver - is empty - - - -File: gst-base.info, Node: Package, Next: PackageLoader, Prev: OrderedCollection, Up: Base classes - -1.121 Package -============= - -Defined in namespace Smalltalk -Superclass: Kernel.PackageInfo -Category: Language-Packaging - I am not part of a standard Smalltalk system. I store internally - the information on a Smalltalk package, and can output my - description in XML. - -* Menu: - -* Package class-instance creation:: (class) -* Package-accessing:: (instance) - - -File: gst-base.info, Node: Package class-instance creation, Next: Package-accessing, Up: Package - -1.121.1 Package class: instance creation ----------------------------------------- - -parse: file - Answer a package from the XML description in file. - - - -File: gst-base.info, Node: Package-accessing, Prev: Package class-instance creation, Up: Package - -1.121.2 Package: accessing --------------------------- - -baseDirectories - Answer `baseDirectories'. - -baseDirectories: aCollection - Check if it's possible to resolve the names in the package - according to the base directories in baseDirectories, which depend - on where the packages.xml is found: the three possible places are - 1) the system kernel directory's parent directory, 2) the local - kernel directory's parent directory, 3) the local image directory - (in order of decreasing priority). - - For a packages.xml found in the system kernel directory's parent - directory, all three directories are searched. For a packages.xml - found in the local kernel directory's parent directory, only - directories 2 and 3 are searched. For a packages.xml directory in - the local image directory, instead, only directory 3 is searched. - -builtFiles - Answer a (modifiable) OrderedCollection of files that are part of - the package but are not distributed. - -callouts - Answer a (modifiable) Set of call-outs that are required to load - the package. Their presence is checked after the libraries and - modules are loaded so that you can do a kind of versioning. - -directory - Answer the base directory from which to load the package. - -features - Answer a (modifiable) Set of features provided by the package. - -fileIns - Answer a (modifiable) OrderedCollections of files that are to be - filed-in to load the package. This is usually a subset of `files' - and `builtFiles'. - -files - Answer a (modifiable) OrderedCollection of files that are part of - the package. - -fullPathOf: fileName - Try appending 'self directory' and fileName to each of the - directory in baseDirectories, and return the path to the first - tried filename that exists. Raise a PackageNotAvailable exception - if no directory is found that contains the file. - -isDisabled - Answer `false'. - -libraries - Answer a (modifiable) Set of shared library names that are - required to load the package. - -modules - Answer a (modifiable) Set of modules that are required to load the - package. - -namespace - Answer the namespace in which the package is loaded. - -namespace: aString - Set to aString the namespace in which the package is loaded. - -prerequisites - Answer a (modifiable) Set of prerequisites. - -primFileIn - Private - File in the given package without paying attention at - dependencies and C callout availability - -relativeDirectory - Answer the directory, relative to the packages file, from which to - load the package. - -relativeDirectory: dir - Set the directory, relative to the packages file, from which to - load the package, to dir. - -sunitScripts - Answer a (modifiable) OrderedCollection of SUnit scripts that - compose the package's test suite. - -test - Answer the test sub-package. - -test: aPackage - Set the test sub-package to be aPackage. - - - -File: gst-base.info, Node: PackageLoader, Next: Permission, Prev: Package, Up: Base classes - -1.122 PackageLoader -=================== - -Defined in namespace Smalltalk -Superclass: Object -Category: Language-Packaging - I am not part of a standard Smalltalk system. I provide methods for - retrieving package information from an XML file and to load - packages into a Smalltalk image, correctly handling dependencies. - -* Menu: - -* PackageLoader class-accessing:: (class) -* PackageLoader class-loading:: (class) -* PackageLoader class-testing:: (class) - - -File: gst-base.info, Node: PackageLoader class-accessing, Next: PackageLoader class-loading, Up: PackageLoader - -1.122.1 PackageLoader class: accessing --------------------------------------- - -builtFilesFor: package - Answer a Set of Strings containing the filenames of the given - package's machine-generated files (relative to the directory - answered by #directoryFor:) - -calloutsFor: package - Answer a Set of Strings containing the filenames of the given - package's required callouts (relative to the directory answered by - #directoryFor:) - -directoryFor: package - Answer a complete path to the given package's files - -featuresFor: package - Answer a Set of Strings containing the features provided by the - given package. - -fileInsFor: package - Answer a Set of Strings containing the filenames of the given - package's file-ins (relative to the directory answered by - #directoryFor:) - -filesFor: package - Answer a Set of Strings containing the filenames of the given - package's files (relative to the directory answered by - #directoryFor:) - -flush - Set to reload the `packages.xml' file the next time it is needed. - -ignoreCallouts - Answer whether unavailable C callouts must generate errors or not. - -ignoreCallouts: aBoolean - Set whether unavailable C callouts must generate errors or not. - -librariesFor: package - Answer a Set of Strings containing the filenames of the given - package's libraries (relative to the directory answered by - #directoryFor:) - -modulesFor: package - Answer a Set of Strings containing the filenames of the given - package's modules (relative to the directory answered by - #directoryFor:) - -packageAt: package - Answer a Package object for the given package - -prerequisitesFor: package - Answer a Set of Strings containing the prerequisites for the given - package - -refresh - Reload the `packages.xml' file in the image and kernel directories. - The three possible places are 1) the kernel directory's parent - directory, 2) the `.st' subdirectory of the user's home directory, - 3) the local image directory (in order of decreasing priority). - - For a packages.xml found in the kernel directory's parent - directory, all three directories are searched. For a packages.xml - found in the `.st' subdirectory, only directories 2 and 3 are - searched. For a packages.xml directory in the local image - directory, finally, only directory 3 is searched. - -sunitScriptFor: package - Answer a Strings containing a SUnit script that describes the - package's test suite. - - - -File: gst-base.info, Node: PackageLoader class-loading, Next: PackageLoader class-testing, Prev: PackageLoader class-accessing, Up: PackageLoader - -1.122.2 PackageLoader class: loading ------------------------------------- - -fileInPackage: package - File in the given package into GNU Smalltalk. - -fileInPackages: packagesList - File in all the packages in packagesList into GNU Smalltalk. - - - -File: gst-base.info, Node: PackageLoader class-testing, Prev: PackageLoader class-loading, Up: PackageLoader - -1.122.3 PackageLoader class: testing ------------------------------------- - -canLoad: package - Answer whether all the needed pre-requisites for package are - available. - - - -File: gst-base.info, Node: Permission, Next: PluggableAdaptor, Prev: PackageLoader, Up: Base classes - -1.123 Permission -================ - -Defined in namespace Smalltalk -Superclass: Object -Category: Language-Security - I am the basic class that represents whether operations that could - harm the system's security are allowed or denied. - -* Menu: - -* Permission class-testing:: (class) -* Permission-accessing:: (instance) -* Permission-testing:: (instance) - - -File: gst-base.info, Node: Permission class-testing, Next: Permission-accessing, Up: Permission - -1.123.1 Permission class: testing ---------------------------------- - -allowing: aSymbol target: aTarget action: action - Not commented. - -allowing: aSymbol target: aTarget actions: actionsArray - Not commented. - -denying: aSymbol target: aTarget action: action - Not commented. - -denying: aSymbol target: aTarget actions: actionsArray - Not commented. - -granting: aSymbol target: aTarget action: action - Not commented. - -granting: aSymbol target: aTarget actions: actionsArray - Not commented. - -name: aSymbol target: aTarget action: action - Not commented. - -name: aSymbol target: aTarget actions: actionsArray - Not commented. - - - -File: gst-base.info, Node: Permission-accessing, Next: Permission-testing, Prev: Permission class-testing, Up: Permission - -1.123.2 Permission: accessing ------------------------------ - -action: anObject - Not commented. - -actions - Answer `actions'. - -actions: anObject - Not commented. - -allow - Not commented. - -allowing - Not commented. - -deny - Not commented. - -denying - Not commented. - -isAllowing - Answer `positive'. - -name - Answer `name'. - -name: anObject - Not commented. - -target - Answer `target'. - -target: anObject - Not commented. - - - -File: gst-base.info, Node: Permission-testing, Prev: Permission-accessing, Up: Permission - -1.123.3 Permission: testing ---------------------------- - -check: aPermission for: anObject - Not commented. - -implies: aPermission - Not commented. - - - -File: gst-base.info, Node: PluggableAdaptor, Next: PluggableProxy, Prev: Permission, Up: Base classes - -1.124 PluggableAdaptor -====================== - -Defined in namespace Smalltalk -Superclass: ValueAdaptor -Category: Language-Data types - I mediate between complex get/set behavior and the #value/#value: - protocol used by ValueAdaptors. The get/set behavior can be - implemented by two blocks, or can be delegated to another object - with messages such as #someProperty to get and #someProperty: to - set. - -* Menu: - -* PluggableAdaptor class-creating instances:: (class) -* PluggableAdaptor-accessing:: (instance) - - -File: gst-base.info, Node: PluggableAdaptor class-creating instances, Next: PluggableAdaptor-accessing, Up: PluggableAdaptor - -1.124.1 PluggableAdaptor class: creating instances --------------------------------------------------- - -getBlock: getBlock putBlock: putBlock - Answer a PluggableAdaptor using the given blocks to implement - #value and #value: - -on: anObject aspect: aSymbol - Answer a PluggableAdaptor using anObject's aSymbol message to - implement #value, and anObject's aSymbol: message (aSymbol - followed by a colon) to implement #value: - -on: anObject getSelector: getSelector putSelector: putSelector - Answer a PluggableAdaptor using anObject's getSelector message to - implement #value, and anObject's putSelector message to implement - #value: - - message - -on: anObject index: anIndex - Answer a PluggableAdaptor using anObject's #at: and #at:put: - message to implement #value and #value:; the first parameter of - #at: and #at:put: is anIndex - -on: aDictionary key: aKey - Same as #on:index:. Provided for clarity and completeness. - - - -File: gst-base.info, Node: PluggableAdaptor-accessing, Prev: PluggableAdaptor class-creating instances, Up: PluggableAdaptor - -1.124.2 PluggableAdaptor: accessing ------------------------------------ - -value - Get the value of the receiver. - -value: anObject - Set the value of the receiver. - - - -File: gst-base.info, Node: PluggableProxy, Next: Point, Prev: PluggableAdaptor, Up: Base classes - -1.125 PluggableProxy -==================== - -Defined in namespace Smalltalk -Superclass: AlternativeObjectProxy -Category: Streams-Files - I am a proxy that stores a different object and, upon load, sends - #reconstructOriginalObject to that object (which can be a - DirectedMessage, in which case the message is sent). The object - to be stored is retrieved by sending #binaryRepresentationObject to - the object. - -* Menu: - -* PluggableProxy class-accessing:: (class) -* PluggableProxy-saving and restoring:: (instance) - - -File: gst-base.info, Node: PluggableProxy class-accessing, Next: PluggableProxy-saving and restoring, Up: PluggableProxy - -1.125.1 PluggableProxy class: accessing ---------------------------------------- - -on: anObject - Answer a proxy to be used to save anObject. The proxy stores a - different object obtained by sending to anObject the - #binaryRepresentationObject message (embedded between #preStore - and #postStore as usual). - - - -File: gst-base.info, Node: PluggableProxy-saving and restoring, Prev: PluggableProxy class-accessing, Up: PluggableProxy - -1.125.2 PluggableProxy: saving and restoring --------------------------------------------- - -object - Reconstruct the object stored in the proxy and answer it; the - binaryRepresentationObject is sent the #reconstructOriginalObject - message, and the resulting object is sent the #postLoad message. - - - -File: gst-base.info, Node: Point, Next: PositionableStream, Prev: PluggableProxy, Up: Base classes - -1.126 Point -=========== - -Defined in namespace Smalltalk -Superclass: Object -Category: Language-Data types - Beginning of a Point class for simple display manipulation. Has - not been exhaustively tested but appears to work for the basic - primitives and for the needs of the Rectangle class. - -* Menu: - -* Point class-instance creation:: (class) -* Point-accessing:: (instance) -* Point-arithmetic:: (instance) -* Point-comparing:: (instance) -* Point-converting:: (instance) -* Point-point functions:: (instance) -* Point-printing:: (instance) -* Point-storing:: (instance) -* Point-truncation and round off:: (instance) - - -File: gst-base.info, Node: Point class-instance creation, Next: Point-accessing, Up: Point - -1.126.1 Point class: instance creation --------------------------------------- - -new - Create a new point with both coordinates set to 0 - -x: xInteger y: yInteger - Create a new point with the given coordinates +addAll: aCollection + Add every item of aCollection to the receiver, answer it +addAll: newCollection after: oldObject + Add every item of newCollection to the receiver just after + oldObject, answer it. Fail if oldObject is not found - -File: gst-base.info, Node: Point-accessing, Next: Point-arithmetic, Prev: Point class-instance creation, Up: Point +addAll: newCollection afterIndex: i + Add every item of newCollection to the receiver just after the + i-th, answer it. Fail if i < 0 or i > self size -1.126.2 Point: accessing ------------------------- +addAll: newCollection before: oldObject + Add every item of newCollection to the receiver just before + oldObject, answer it. Fail if oldObject is not found -x - Answer the x coordinate +addAll: newCollection beforeIndex: i + Add every item of newCollection to the receiver just before the + i-th, answer it. Fail if i < 1 or i > self size + 1 -x: aNumber - Set the x coordinate to aNumber +addAllFirst: aCollection + Add every item of newCollection to the receiver right at the start + of the receiver. Answer aCollection -x: anXNumber y: aYNumber - Set the x and y coordinate to anXNumber and aYNumber, respectively +addAllLast: aCollection + Add every item of newCollection to the receiver right at the end + of the receiver. Answer aCollection -y - Answer the y coordinate +addFirst: newObject + Add newObject to the receiver right at the start of the receiver. + Answer newObject -y: aNumber - Set the y coordinate to aNumber +addLast: newObject + Add newObject to the receiver right at the end of the receiver. + Answer newObject  -File: gst-base.info, Node: Point-arithmetic, Next: Point-comparing, Prev: Point-accessing, Up: Point +File: gst-base.info, Node: OrderedCollection-removing, Prev: OrderedCollection-adding, Up: OrderedCollection -1.126.3 Point: arithmetic -------------------------- +1.123.4 OrderedCollection: removing +----------------------------------- -* scale - Multiply the receiver by scale, which can be a Number or a Point +remove: anObject ifAbsent: aBlock + Remove anObject from the receiver. If it can't be found, answer the + result of evaluating aBlock -+ delta - Sum the receiver and delta, which can be a Number or a Point +removeAtIndex: anIndex + Remove the object at index anIndex from the receiver. Fail if the + index is out of bounds. -- delta - Subtract delta, which can be a Number or a Point, from the receiver +removeFirst + Remove an object from the start of the receiver. Fail if the + receiver is empty -/ scale - Divide the receiver by scale, which can be a Number or a Point, - with no loss of precision +removeLast + Remove an object from the end of the receiver. Fail if the receiver + is empty -// scale - Divide the receiver by scale, which can be a Number or a Point, - with truncation towards -infinity -abs - Answer a new point whose coordinates are the absolute values of the - receiver's + +File: gst-base.info, Node: Package, Next: PackageLoader, Prev: OrderedCollection, Up: Base classes +1.124 Package +============= - -File: gst-base.info, Node: Point-comparing, Next: Point-converting, Prev: Point-arithmetic, Up: Point +Defined in namespace Smalltalk +Superclass: Kernel.PackageInfo +Category: Language-Packaging + I am not part of a standard Smalltalk system. I store internally + the information on a Smalltalk package, and can output my + description in XML. -1.126.4 Point: comparing ------------------------- +* Menu: -< aPoint - Answer whether the receiver is higher and to the left of aPoint +* Package class-instance creation:: (class) +* Package-accessing:: (instance) -<= aPoint - Answer whether aPoint is equal to the receiver, or the receiver is - higher and to the left of aPoint + +File: gst-base.info, Node: Package class-instance creation, Next: Package-accessing, Up: Package -= aPoint - Answer whether the receiver is equal to aPoint +1.124.1 Package class: instance creation +---------------------------------------- -> aPoint - Answer whether the receiver is lower and to the right of aPoint +parse: file + Answer a package from the XML description in file. ->= aPoint - Answer whether aPoint is equal to the receiver, or the receiver is - lower and to the right of aPoint -max: aPoint - Answer self if it is lower and to the right of aPoint, aPoint - otherwise + +File: gst-base.info, Node: Package-accessing, Prev: Package class-instance creation, Up: Package -min: aPoint - Answer self if it is higher and to the left of aPoint, aPoint - otherwise +1.124.2 Package: accessing +-------------------------- +baseDirectories + Answer `baseDirectories'. - -File: gst-base.info, Node: Point-converting, Next: Point-point functions, Prev: Point-comparing, Up: Point +baseDirectories: aCollection + Check if it's possible to resolve the names in the package + according to the base directories in baseDirectories, which depend + on where the packages.xml is found: the three possible places are + 1) the system kernel directory's parent directory, 2) the local + kernel directory's parent directory, 3) the local image directory + (in order of decreasing priority). -1.126.5 Point: converting -------------------------- + For a packages.xml found in the system kernel directory's parent + directory, all three directories are searched. For a packages.xml + found in the local kernel directory's parent directory, only + directories 2 and 3 are searched. For a packages.xml directory in + the local image directory, instead, only directory 3 is searched. -asPoint - Answer the receiver. +builtFiles + Answer a (modifiable) OrderedCollection of files that are part of + the package but are not distributed. -asRectangle - Answer an empty rectangle whose origin is self +callouts + Answer a (modifiable) Set of call-outs that are required to load + the package. Their presence is checked after the libraries and + modules are loaded so that you can do a kind of versioning. -corner: aPoint - Answer a Rectangle whose origin is the receiver and whose corner - is aPoint +directory + Answer the base directory from which to load the package. -extent: aPoint - Answer a Rectangle whose origin is the receiver and whose extent - is aPoint +features + Answer a (modifiable) Set of features provided by the package. -hash - Answer an hash value for the receiver +fileIns + Answer a (modifiable) OrderedCollections of files that are to be + filed-in to load the package. This is usually a subset of `files' + and `builtFiles'. +files + Answer a (modifiable) OrderedCollection of files that are part of + the package. - -File: gst-base.info, Node: Point-point functions, Next: Point-printing, Prev: Point-converting, Up: Point +fullPathOf: fileName + Try appending 'self directory' and fileName to each of the + directory in baseDirectories, and return the path to the first + tried filename that exists. Raise a PackageNotAvailable exception + if no directory is found that contains the file. -1.126.6 Point: point functions ------------------------------- +isDisabled + Answer `false'. -arcTan - Answer the angle (measured counterclockwise) between the receiver - and a ray starting in (0, 0) and moving towards (1, 0) - i.e. 3 - o'clock +libraries + Answer a (modifiable) Set of shared library names that are + required to load the package. -dist: aPoint - Answer the distance between the receiver and aPoint +modules + Answer a (modifiable) Set of modules that are required to load the + package. -dotProduct: aPoint - Answer the dot product between the receiver and aPoint +namespace + Answer the namespace in which the package is loaded. -grid: aPoint - Answer a new point whose coordinates are rounded towards the - nearest multiple of aPoint +namespace: aString + Set to aString the namespace in which the package is loaded. -normal - Rotate the Point 90degrees clockwise and get the unit vector +prerequisites + Answer a (modifiable) Set of prerequisites. -transpose - Answer a new point whose coordinates are the receiver's coordinates - exchanged (x becomes y, y becomes x) +primFileIn + Private - File in the given package without paying attention at + dependencies and C callout availability -truncatedGrid: aPoint - Answer a new point whose coordinates are rounded towards -infinity, - to a multiple of grid (which must be a Point) +relativeDirectory + Answer the directory, relative to the packages file, from which to + load the package. +relativeDirectory: dir + Set the directory, relative to the packages file, from which to + load the package, to dir. - -File: gst-base.info, Node: Point-printing, Next: Point-storing, Prev: Point-point functions, Up: Point +startScript + Answer the start script for the package. -1.126.7 Point: printing ------------------------ +startScript: aString + Set the start script for the package to aString. -printOn: aStream - Print a representation for the receiver on aStream +stopScript + Answer the start script for the package. +stopScript: aString + Set the stop script for the package to aString. - -File: gst-base.info, Node: Point-storing, Next: Point-truncation and round off, Prev: Point-printing, Up: Point +sunitScripts + Answer a (modifiable) OrderedCollection of SUnit scripts that + compose the package's test suite. -1.126.8 Point: storing ----------------------- +test + Answer the test sub-package. -storeOn: aStream - Print Smalltalk code compiling to the receiver on aStream +test: aPackage + Set the test sub-package to be aPackage.  -File: gst-base.info, Node: Point-truncation and round off, Prev: Point-storing, Up: Point +File: gst-base.info, Node: PackageLoader, Next: Permission, Prev: Package, Up: Base classes -1.126.9 Point: truncation and round off ---------------------------------------- +1.125 PackageLoader +=================== -rounded - Answer a new point whose coordinates are rounded to the nearest - integer +Defined in namespace Smalltalk +Superclass: Object +Category: Language-Packaging + I am not part of a standard Smalltalk system. I provide methods for + retrieving package information from an XML file and to load + packages into a Smalltalk image, correctly handling dependencies. -truncateTo: grid - Answer a new point whose coordinates are rounded towards -infinity, - to a multiple of grid (which must be a Number) +* Menu: +* PackageLoader class-accessing:: (class) +* PackageLoader class-loading:: (class) +* PackageLoader class-testing:: (class)  -File: gst-base.info, Node: PositionableStream, Next: Process, Prev: Point, Up: Base classes +File: gst-base.info, Node: PackageLoader class-accessing, Next: PackageLoader class-loading, Up: PackageLoader + +1.125.1 PackageLoader class: accessing +-------------------------------------- + +builtFilesFor: package + Answer a Set of Strings containing the filenames of the given + package's machine-generated files (relative to the directory + answered by #directoryFor:) -1.127 PositionableStream -======================== +calloutsFor: package + Answer a Set of Strings containing the filenames of the given + package's required callouts (relative to the directory answered by + #directoryFor:) -Defined in namespace Smalltalk -Superclass: Stream -Category: Streams-Collections - My instances represent streams where explicit positioning is - permitted. Thus, my streams act in a manner to normal disk files: - you can read or write sequentially, but also position the file to - a particular place whenever you choose. Generally, you'll want to - use ReadStream, WriteStream or ReadWriteStream instead of me to - create and use streams. +directoryFor: package + Answer a Directory object to the given package's files -* Menu: +featuresFor: package + Answer a Set of Strings containing the features provided by the + given package. -* PositionableStream class-instance creation:: (class) -* PositionableStream-accessing-reading:: (instance) -* PositionableStream-class type methods:: (instance) -* PositionableStream-compiling:: (instance) -* PositionableStream-positioning:: (instance) -* PositionableStream-testing:: (instance) -* PositionableStream-truncating:: (instance) +fileInsFor: package + Answer a Set of Strings containing the filenames of the given + package's file-ins (relative to the directory answered by + #directoryFor:) - -File: gst-base.info, Node: PositionableStream class-instance creation, Next: PositionableStream-accessing-reading, Up: PositionableStream +filesFor: package + Answer a Set of Strings containing the filenames of the given + package's files (relative to the directory answered by + #directoryFor:) -1.127.1 PositionableStream class: instance creation ---------------------------------------------------- +flush + Set to reload the `packages.xml' file the next time it is needed. -on: aCollection - Answer an instance of the receiver streaming on the whole contents - of aCollection +ignoreCallouts + Answer whether unavailable C callouts must generate errors or not. -on: aCollection from: firstIndex to: lastIndex - Answer an instance of the receiver streaming from the - firstIndex-th item of aCollection to the lastIndex-th +ignoreCallouts: aBoolean + Set whether unavailable C callouts must generate errors or not. +librariesFor: package + Answer a Set of Strings containing the filenames of the given + package's libraries (relative to the directory answered by + #directoryFor:) - -File: gst-base.info, Node: PositionableStream-accessing-reading, Next: PositionableStream-class type methods, Prev: PositionableStream class-instance creation, Up: PositionableStream +modulesFor: package + Answer a Set of Strings containing the filenames of the given + package's modules (relative to the directory answered by + #directoryFor:) -1.127.2 PositionableStream: accessing-reading ---------------------------------------------- +packageAt: package + Answer a Package object for the given package -close - Disassociate a stream from its backing store. +prerequisitesFor: package + Answer a Set of Strings containing the prerequisites for the given + package -contents - Returns a collection of the same type that the stream accesses, up - to and including the final element. +refresh + Reload the `packages.xml' file in the image and kernel directories. + The three possible places are 1) the kernel directory's parent + directory, 2) the `.st' subdirectory of the user's home directory, + 3) the local image directory (in order of decreasing priority). -copyFrom: start to: end - Answer the data on which the receiver is streaming, from the - start-th item to the end-th. Note that this method is 0-based, - unlike the one in Collection, because a Stream's #position method - returns 0-based values. + For a packages.xml found in the kernel directory's parent + directory, all three directories are searched. For a packages.xml + found in the `.st' subdirectory, only directories 2 and 3 are + searched. For a packages.xml directory in the local image + directory, finally, only directory 3 is searched. -next - Answer the next item of the receiver. Returns nil when at end of - stream. +sunitScriptFor: package + Answer a Strings containing a SUnit script that describes the + package's test suite. -peek - Returns the next element of the stream without moving the pointer. - Returns nil when at end of stream. -peekFor: anObject - Returns true and gobbles the next element from the stream of it is - equal to anObject, returns false and doesn't gobble the next - element if the next element is not equal to anObject. + +File: gst-base.info, Node: PackageLoader class-loading, Next: PackageLoader class-testing, Prev: PackageLoader class-accessing, Up: PackageLoader -readStream - Answer a ReadStream on the same contents as the receiver +1.125.2 PackageLoader class: loading +------------------------------------ -reverseContents - Returns a collection of the same type that the stream accesses, up - to and including the final element, but in reverse order. +fileInPackage: package + File in the given package into GNU Smalltalk. +fileInPackages: packagesList + File in all the packages in packagesList into GNU Smalltalk. - -File: gst-base.info, Node: PositionableStream-class type methods, Next: PositionableStream-compiling, Prev: PositionableStream-accessing-reading, Up: PositionableStream -1.127.3 PositionableStream: class type methods ----------------------------------------------- + +File: gst-base.info, Node: PackageLoader class-testing, Prev: PackageLoader class-loading, Up: PackageLoader -isExternalStream - We stream on a collection residing in the image, so answer false +1.125.3 PackageLoader class: testing +------------------------------------ -species - Return the type of the collections returned by #upTo: etc., which - are the same kind as those returned by the collection with methods - such as #select:. +canLoad: package + Answer whether all the needed pre-requisites for package are + available.  -File: gst-base.info, Node: PositionableStream-compiling, Next: PositionableStream-positioning, Prev: PositionableStream-class type methods, Up: PositionableStream +File: gst-base.info, Node: Permission, Next: PluggableAdaptor, Prev: PackageLoader, Up: Base classes -1.127.4 PositionableStream: compiling -------------------------------------- +1.126 Permission +================ -name - Answer a string that represents what the receiver is streaming on +Defined in namespace Smalltalk +Superclass: Object +Category: Language-Security + I am the basic class that represents whether operations that could + harm the system's security are allowed or denied. -segmentFrom: startPos to: endPos - Answer an object that, when sent #asString, will yield the result - of sending `copyFrom: startPos to: endPos' to the receiver +* Menu: +* Permission class-testing:: (class) +* Permission-accessing:: (instance) +* Permission-testing:: (instance)  -File: gst-base.info, Node: PositionableStream-positioning, Next: PositionableStream-testing, Prev: PositionableStream-compiling, Up: PositionableStream - -1.127.5 PositionableStream: positioning ---------------------------------------- +File: gst-base.info, Node: Permission class-testing, Next: Permission-accessing, Up: Permission -basicPosition: anInteger - Move the stream pointer to the anInteger-th object +1.126.1 Permission class: testing +--------------------------------- -isPositionable - Answer true if the stream supports moving backwards with #skip:. +allowing: aSymbol target: aTarget action: action + Not commented. -position - Answer the current value of the stream pointer +allowing: aSymbol target: aTarget actions: actionsArray + Not commented. -position: anInteger - Move the stream pointer to the anInteger-th object +denying: aSymbol target: aTarget action: action + Not commented. -reset - Move the stream back to its first element. For write-only streams, - the stream is truncated there. +denying: aSymbol target: aTarget actions: actionsArray + Not commented. -setToEnd - Move the current position to the end of the stream. +granting: aSymbol target: aTarget action: action + Not commented. -size - Answer the size of data on which we are streaming. +granting: aSymbol target: aTarget actions: actionsArray + Not commented. -skip: anInteger - Move the current position by anInteger places, either forwards or - backwards. +name: aSymbol target: aTarget action: action + Not commented. -skipSeparators - Advance the receiver until we find a character that is not a - separator. Answer false if we reach the end of the stream, else - answer true; in this case, sending #next will return the first - non-separator character (possibly the same to which the stream - pointed before #skipSeparators was sent). +name: aSymbol target: aTarget actions: actionsArray + Not commented.  -File: gst-base.info, Node: PositionableStream-testing, Next: PositionableStream-truncating, Prev: PositionableStream-positioning, Up: PositionableStream +File: gst-base.info, Node: Permission-accessing, Next: Permission-testing, Prev: Permission class-testing, Up: Permission -1.127.6 PositionableStream: testing ------------------------------------ +1.126.2 Permission: accessing +----------------------------- -atEnd - Answer whether the objects in the stream have reached an end +action: anObject + Not commented. -basicAtEnd - Answer whether the objects in the stream have reached an end. - This method must NOT be overridden. +actions + Answer `actions'. -isEmpty - Answer whether the stream has no objects +actions: anObject + Not commented. +allow + Not commented. - -File: gst-base.info, Node: PositionableStream-truncating, Prev: PositionableStream-testing, Up: PositionableStream +allowing + Not commented. -1.127.7 PositionableStream: truncating --------------------------------------- +deny + Not commented. -truncate - Truncate the receiver to the current position - only valid for - writing streams +denying + Not commented. +isAllowing + Answer `positive'. - -File: gst-base.info, Node: Process, Next: ProcessorScheduler, Prev: PositionableStream, Up: Base classes +name + Answer `name'. -1.128 Process -============= +name: anObject + Not commented. -Defined in namespace Smalltalk -Superclass: Link -Category: Language-Processes - I represent a unit of computation. My instances are independantly - executable blocks that have a priority associated with them, and - they can suspend themselves and resume themselves however they - wish. +target + Answer `target'. -* Menu: +target: anObject + Not commented. -* Process-accessing:: (instance) -* Process-basic:: (instance) -* Process-builtins:: (instance) -* Process-printing:: (instance)  -File: gst-base.info, Node: Process-accessing, Next: Process-basic, Up: Process - -1.128.1 Process: accessing --------------------------- +File: gst-base.info, Node: Permission-testing, Prev: Permission-accessing, Up: Permission -externalInterruptsEnabled - Answer whether the receiver is executed with interrupts enabled +1.126.3 Permission: testing +--------------------------- -name - Answer the user-friendly name of the process. +check: aPermission for: anObject + Not commented. -name: aString - Give the name aString to the process +implies: aPermission + Not commented. -priority - Answer the receiver's priority -priority: anInteger - Change the receiver's priority to anInteger + +File: gst-base.info, Node: PluggableAdaptor, Next: PluggableProxy, Prev: Permission, Up: Base classes -queueInterrupt: aBlock - Force the receiver to be interrupted and to evaluate aBlock as - soon as it becomes the active process (this could mean NOW if the - receiver is active). If the process is temporarily suspended or - waiting on a semaphore, it is temporarily woken up so that the - interrupt is processed as soon as the process priority allows to - do. Answer the receiver. +1.127 PluggableAdaptor +====================== -suspendedContext - Answer the context that the process was executing at the time it - was suspended. +Defined in namespace Smalltalk +Superclass: ValueAdaptor +Category: Language-Data types + I mediate between complex get/set behavior and the #value/#value: + protocol used by ValueAdaptors. The get/set behavior can be + implemented by two blocks, or can be delegated to another object + with messages such as #someProperty to get and #someProperty: to + set. -valueWithoutInterrupts: aBlock - Evaluate aBlock and delay all interrupts that are requested during - its execution to after aBlock returns. +* Menu: +* PluggableAdaptor class-creating instances:: (class) +* PluggableAdaptor-accessing:: (instance)  -File: gst-base.info, Node: Process-basic, Next: Process-builtins, Prev: Process-accessing, Up: Process +File: gst-base.info, Node: PluggableAdaptor class-creating instances, Next: PluggableAdaptor-accessing, Up: PluggableAdaptor -1.128.2 Process: basic ----------------------- +1.127.1 PluggableAdaptor class: creating instances +-------------------------------------------------- -context - Return the execution context of the receiver. +getBlock: getBlock putBlock: putBlock + Answer a PluggableAdaptor using the given blocks to implement + #value and #value: -debugger - Return the object in charge of debugging the receiver. This - always returns nil unless the DebugTools package is loaded. +on: anObject aspect: aSymbol + Answer a PluggableAdaptor using anObject's aSymbol message to + implement #value, and anObject's aSymbol: message (aSymbol + followed by a colon) to implement #value: -finalize - Terminate processes that are GCed while waiting on a dead - semaphore. +on: anObject getSelector: getSelector putSelector: putSelector + Answer a PluggableAdaptor using anObject's getSelector message to + implement #value, and anObject's putSelector message to implement + #value: -lowerPriority - Lower a bit the priority of the receiver. A #lowerPriority will - cancel a previous #raisePriority, and vice versa. + message -makeUntrusted: aBoolean - Set whether the receiver is trusted or not. +on: anObject index: anIndex + Answer a PluggableAdaptor using anObject's #at: and #at:put: + message to implement #value and #value:; the first parameter of + #at: and #at:put: is anIndex -primTerminate - Terminate the receiver - This is nothing more than prohibiting to - resume the process, then suspending it. +on: aDictionary key: aKey + Same as #on:index:. Provided for clarity and completeness. -raisePriority - Raise a bit the priority of the receiver. A #lowerPriority will - cancel a previous #raisePriority, and vice versa. -singleStep - Execute a limited amount of code (usually a bytecode, or up to the - next backward jump, or up to the next message send) of the - receiver, which must in a ready-to-run state (neither executing - nor terminating nor suspended), then restart running the current - process. The current process should have higher priority than the - receiver. For better performance, use the underlying primitive, - Process>>#singleStepWaitingOn:. + +File: gst-base.info, Node: PluggableAdaptor-accessing, Prev: PluggableAdaptor class-creating instances, Up: PluggableAdaptor -terminate - Terminate the receiver after having evaluated all the #ensure: and - #ifCurtailed: blocks that are active in it. This is done by - signalling a ProcessBeingTerminated notification. +1.127.2 PluggableAdaptor: accessing +----------------------------------- -terminateOnQuit - Mark the receiver so that it is terminated when ObjectMemory - class>>#quit: is sent. +value + Get the value of the receiver. + +value: anObject + Set the value of the receiver.  -File: gst-base.info, Node: Process-builtins, Next: Process-printing, Prev: Process-basic, Up: Process +File: gst-base.info, Node: PluggableProxy, Next: Point, Prev: PluggableAdaptor, Up: Base classes -1.128.3 Process: builtins -------------------------- +1.128 PluggableProxy +==================== -resume - Resume the receiver's execution +Defined in namespace Smalltalk +Superclass: AlternativeObjectProxy +Category: Streams-Files + I am a proxy that stores a different object and, upon load, sends + #reconstructOriginalObject to that object (which can be a + DirectedMessage, in which case the message is sent). The object + to be stored is retrieved by sending #binaryRepresentationObject to + the object. -singleStepWaitingOn: aSemaphore - Execute a limited amount of code (usually a bytecode, or up to the - next backward jump, or up to the next message send) of the - receiver, which must in a ready-to-run state (neither executing - nor terminating nor suspended), then restart running the current - process. aSemaphore is used as a means to synchronize the - execution of the current process and the receiver and should have - no signals on it. The current process should have higher priority - than the receiver. +* Menu: -suspend - Do nothing if we're already suspended. Note that the blue book made - suspend a primitive - but the real primitive is yielding control to - another process. Suspending is nothing more than taking ourselves - out of every scheduling list and THEN yielding control to another - process +* PluggableProxy class-accessing:: (class) +* PluggableProxy-saving and restoring:: (instance) -yield - Yield control from the receiver to other processes + +File: gst-base.info, Node: PluggableProxy class-accessing, Next: PluggableProxy-saving and restoring, Up: PluggableProxy + +1.128.1 PluggableProxy class: accessing +--------------------------------------- + +on: anObject + Answer a proxy to be used to save anObject. The proxy stores a + different object obtained by sending to anObject the + #binaryRepresentationObject message (embedded between #preStore + and #postStore as usual).  -File: gst-base.info, Node: Process-printing, Prev: Process-builtins, Up: Process +File: gst-base.info, Node: PluggableProxy-saving and restoring, Prev: PluggableProxy class-accessing, Up: PluggableProxy -1.128.4 Process: printing -------------------------- +1.128.2 PluggableProxy: saving and restoring +-------------------------------------------- -printOn: aStream - Print a representation of the receiver on aStream +object + Reconstruct the object stored in the proxy and answer it; the + binaryRepresentationObject is sent the #reconstructOriginalObject + message, and the resulting object is sent the #postLoad message.  -File: gst-base.info, Node: ProcessorScheduler, Next: Promise, Prev: Process, Up: Base classes +File: gst-base.info, Node: Point, Next: PositionableStream, Prev: PluggableProxy, Up: Base classes -1.129 ProcessorScheduler -======================== +1.129 Point +=========== Defined in namespace Smalltalk Superclass: Object -Category: Language-Processes - I provide methods that control the execution of processes. +Category: Language-Data types + Beginning of a Point class for simple display manipulation. Has + not been exhaustively tested but appears to work for the basic + primitives and for the needs of the Rectangle class. * Menu: -* ProcessorScheduler class-instance creation:: (class) -* ProcessorScheduler-basic:: (instance) -* ProcessorScheduler-built ins:: (instance) -* ProcessorScheduler-idle tasks:: (instance) -* ProcessorScheduler-printing:: (instance) -* ProcessorScheduler-priorities:: (instance) -* ProcessorScheduler-storing:: (instance) -* ProcessorScheduler-timed invocation:: (instance) +* Point class-instance creation:: (class) +* Point-accessing:: (instance) +* Point-arithmetic:: (instance) +* Point-comparing:: (instance) +* Point-converting:: (instance) +* Point-point functions:: (instance) +* Point-printing:: (instance) +* Point-storing:: (instance) +* Point-truncation and round off:: (instance)  -File: gst-base.info, Node: ProcessorScheduler class-instance creation, Next: ProcessorScheduler-basic, Up: ProcessorScheduler +File: gst-base.info, Node: Point class-instance creation, Next: Point-accessing, Up: Point -1.129.1 ProcessorScheduler class: instance creation ---------------------------------------------------- +1.129.1 Point class: instance creation +-------------------------------------- new - Error--new instances of ProcessorScheduler should not be created. + Create a new point with both coordinates set to 0 + +x: xInteger y: yInteger + Create a new point with the given coordinates  -File: gst-base.info, Node: ProcessorScheduler-basic, Next: ProcessorScheduler-built ins, Prev: ProcessorScheduler class-instance creation, Up: ProcessorScheduler +File: gst-base.info, Node: Point-accessing, Next: Point-arithmetic, Prev: Point class-instance creation, Up: Point -1.129.2 ProcessorScheduler: basic ---------------------------------- +1.129.2 Point: accessing +------------------------ -activeDebugger - Answer the active process' debugger +x + Answer the x coordinate -activePriority - Answer the active process' priority +x: aNumber + Set the x coordinate to aNumber -activeProcess - Answer the active process +x: anXNumber y: aYNumber + Set the x and y coordinate to anXNumber and aYNumber, respectively -processesAt: aPriority - Answer a linked list of processes at the given priority +y + Answer the y coordinate -terminateActive - Terminate the active process +y: aNumber + Set the y coordinate to aNumber -timeSlice - Answer the timeslice that is assigned to each Process before it is - automatically preempted by the system (in milliseconds). An - answer of zero means that preemptive multitasking is disabled. - Note that the system by default is compiled without preemptive - multitasking, and that even if it is enabled it will work only - under BSD derivatives (or, in general, systems that support - ITIMER_VIRTUAL). -timeSlice: milliSeconds - Set the timeslice that is assigned to each Process before it is - automatically preempted by the system. Setting this to zero - disables preemptive multitasking. Note that the system by default - is compiled with preemptive multitasking disabled, and that even - if it is enabled it will surely work only under BSD derivatives - (or, in general, systems that support ITIMER_VIRTUAL). + +File: gst-base.info, Node: Point-arithmetic, Next: Point-comparing, Prev: Point-accessing, Up: Point -yield - Let the active process yield control to other processes +1.129.3 Point: arithmetic +------------------------- + +* scale + Multiply the receiver by scale, which can be a Number or a Point ++ delta + Sum the receiver and delta, which can be a Number or a Point - -File: gst-base.info, Node: ProcessorScheduler-built ins, Next: ProcessorScheduler-idle tasks, Prev: ProcessorScheduler-basic, Up: ProcessorScheduler +- delta + Subtract delta, which can be a Number or a Point, from the receiver -1.129.3 ProcessorScheduler: built ins -------------------------------------- +/ scale + Divide the receiver by scale, which can be a Number or a Point, + with no loss of precision - twice +// scale + Divide the receiver by scale, which can be a Number or a Point, + with truncation towards -infinity -disableInterrupts - Disable interrupts caused by external events while the current - process is executing. Note that interrupts are disabled on a - per-process basis, and that calling #disableInterrupts twice - requires calling #enableInterrupts twice as well to re-enable - interrupts. +abs + Answer a new point whose coordinates are the absolute values of the + receiver's -enableInterrupts - Re-enable interrupts caused by external events while the current - process is executing. By default, interrupts are enabled. + +File: gst-base.info, Node: Point-comparing, Next: Point-converting, Prev: Point-arithmetic, Up: Point + +1.129.4 Point: comparing +------------------------ + +< aPoint + Answer whether the receiver is higher and to the left of aPoint - -File: gst-base.info, Node: ProcessorScheduler-idle tasks, Next: ProcessorScheduler-printing, Prev: ProcessorScheduler-built ins, Up: ProcessorScheduler +<= aPoint + Answer whether aPoint is equal to the receiver, or the receiver is + higher and to the left of aPoint -1.129.4 ProcessorScheduler: idle tasks --------------------------------------- += aPoint + Answer whether the receiver is equal to aPoint -idle - Private - Call the next idle task +> aPoint + Answer whether the receiver is lower and to the right of aPoint -idleAdd: aBlock - Register aBlock to be executed when things are idle +>= aPoint + Answer whether aPoint is equal to the receiver, or the receiver is + lower and to the right of aPoint -initialize - Private - Start the finalization process. +max: aPoint + Answer self if it is lower and to the right of aPoint, aPoint + otherwise -update: aSymbol - If we left some work behind when the image was saved, do it now. +min: aPoint + Answer self if it is higher and to the left of aPoint, aPoint + otherwise  -File: gst-base.info, Node: ProcessorScheduler-printing, Next: ProcessorScheduler-priorities, Prev: ProcessorScheduler-idle tasks, Up: ProcessorScheduler +File: gst-base.info, Node: Point-converting, Next: Point-point functions, Prev: Point-comparing, Up: Point -1.129.5 ProcessorScheduler: printing ------------------------------------- +1.129.5 Point: converting +------------------------- -printOn: aStream - Store onto aStream a printed representation of the receiver +asPoint + Answer the receiver. +asRectangle + Answer an empty rectangle whose origin is self - -File: gst-base.info, Node: ProcessorScheduler-priorities, Next: ProcessorScheduler-storing, Prev: ProcessorScheduler-printing, Up: ProcessorScheduler +corner: aPoint + Answer a Rectangle whose origin is the receiver and whose corner + is aPoint -1.129.6 ProcessorScheduler: priorities --------------------------------------- +extent: aPoint + Answer a Rectangle whose origin is the receiver and whose extent + is aPoint -highIOPriority - Answer the priority for system high-priority I/O processes, such - as a process handling input from a network. +hash + Answer an hash value for the receiver -highestPriority - Answer the highest valid priority -lowIOPriority - Answer the priority for system low-priority I/O processes. - Examples are the process handling input from the user (keyboard, - pointing device, etc.) and the process distributing input from a - network. + +File: gst-base.info, Node: Point-point functions, Next: Point-printing, Prev: Point-converting, Up: Point -lowestPriority - Answer the lowest valid priority +1.129.6 Point: point functions +------------------------------ -priorityName: priority - Private - Answer a name for the given process priority +arcTan + Answer the angle (measured counterclockwise) between the receiver + and a ray starting in (0, 0) and moving towards (1, 0) - i.e. 3 + o'clock -rockBottomPriority - Answer the lowest valid priority +dist: aPoint + Answer the distance between the receiver and aPoint -systemBackgroundPriority - Answer the priority for system background-priority processes. - Examples are an incremental garbage collector or status checker. +dotProduct: aPoint + Answer the dot product between the receiver and aPoint -timingPriority - Answer the priority for system real-time processes. +grid: aPoint + Answer a new point whose coordinates are rounded towards the + nearest multiple of aPoint -unpreemptedPriority - Answer the highest priority avilable in the system; never create a - process with this priority, instead use - BlockClosure>>#valueWithoutPreemption. +normal + Rotate the Point 90degrees clockwise and get the unit vector -userBackgroundPriority - Answer the priority for user background-priority processes +transpose + Answer a new point whose coordinates are the receiver's coordinates + exchanged (x becomes y, y becomes x) -userInterruptPriority - Answer the priority for user interrupt-priority processes. - Processes run at this level will preempt the window scheduler and - should, therefore, not consume the processor forever. +truncatedGrid: aPoint + Answer a new point whose coordinates are rounded towards -infinity, + to a multiple of grid (which must be a Point) -userSchedulingPriority - Answer the priority for user standard-priority processes + + +File: gst-base.info, Node: Point-printing, Next: Point-storing, Prev: Point-point functions, Up: Point + +1.129.7 Point: printing +----------------------- + +printOn: aStream + Print a representation for the receiver on aStream  -File: gst-base.info, Node: ProcessorScheduler-storing, Next: ProcessorScheduler-timed invocation, Prev: ProcessorScheduler-priorities, Up: ProcessorScheduler +File: gst-base.info, Node: Point-storing, Next: Point-truncation and round off, Prev: Point-printing, Up: Point -1.129.7 ProcessorScheduler: storing ------------------------------------ +1.129.8 Point: storing +---------------------- storeOn: aStream - Store onto aStream a Smalltalk expression which evaluates to the - receiver + Print Smalltalk code compiling to the receiver on aStream  -File: gst-base.info, Node: ProcessorScheduler-timed invocation, Prev: ProcessorScheduler-storing, Up: ProcessorScheduler - -1.129.8 ProcessorScheduler: timed invocation --------------------------------------------- +File: gst-base.info, Node: Point-truncation and round off, Prev: Point-storing, Up: Point -isTimeoutProgrammed - Private - Answer whether there is a pending call to - #signal:atMilliseconds: +1.129.9 Point: truncation and round off +--------------------------------------- -signal: aSemaphore atMilliseconds: millis - Private - signal 'aSemaphore' after 'millis' milliseconds have - elapsed +rounded + Answer a new point whose coordinates are rounded to the nearest + integer -signal: aSemaphore onInterrupt: anIntegerSignalNumber - Private - signal 'aSemaphore' when the given C signal occurs +truncateTo: grid + Answer a new point whose coordinates are rounded towards -infinity, + to a multiple of grid (which must be a Number)  -File: gst-base.info, Node: Promise, Next: Random, Prev: ProcessorScheduler, Up: Base classes +File: gst-base.info, Node: PositionableStream, Next: Process, Prev: Point, Up: Base classes -1.130 Promise -============= +1.130 PositionableStream +======================== Defined in namespace Smalltalk -Superclass: ValueHolder -Category: Language-Data types - I store my value in a variable, and know whether I have been - initialized or not. If you ask for my value and I have not been - initialized, I suspend the process until a value has been assigned. +Superclass: Stream +Category: Streams-Collections + My instances represent streams where explicit positioning is + permitted. Thus, my streams act in a manner to normal disk files: + you can read or write sequentially, but also position the file to + a particular place whenever you choose. Generally, you'll want to + use ReadStream, WriteStream or ReadWriteStream instead of me to + create and use streams. * Menu: -* Promise class-creating instances:: (class) -* Promise-accessing:: (instance) -* Promise-initializing:: (instance) -* Promise-printing:: (instance) -* Promise-still unclassified:: (instance) +* PositionableStream class-instance creation:: (class) +* PositionableStream-accessing-reading:: (instance) +* PositionableStream-class type methods:: (instance) +* PositionableStream-compiling:: (instance) +* PositionableStream-positioning:: (instance) +* PositionableStream-still unclassified:: (instance) +* PositionableStream-testing:: (instance) +* PositionableStream-truncating:: (instance)  -File: gst-base.info, Node: Promise class-creating instances, Next: Promise-accessing, Up: Promise +File: gst-base.info, Node: PositionableStream class-instance creation, Next: PositionableStream-accessing-reading, Up: PositionableStream -1.130.1 Promise class: creating instances ------------------------------------------ +1.130.1 PositionableStream class: instance creation +--------------------------------------------------- -for: aBlock - Invoke aBlock at an indeterminate time in an indeterminate process - before answering its value from #value sent to my result. +on: aCollection + Answer an instance of the receiver streaming on the whole contents + of aCollection -null - This method should not be called for instances of this class. +on: aCollection from: firstIndex to: lastIndex + Answer an instance of the receiver streaming from the + firstIndex-th item of aCollection to the lastIndex-th  -File: gst-base.info, Node: Promise-accessing, Next: Promise-initializing, Prev: Promise class-creating instances, Up: Promise - -1.130.2 Promise: accessing --------------------------- - -hasError - Answer whether calling #value will raise an exception. - -hasValue - Answer whether we already have a value (or calling #value will - raise an error). +File: gst-base.info, Node: PositionableStream-accessing-reading, Next: PositionableStream-class type methods, Prev: PositionableStream class-instance creation, Up: PositionableStream -value - Get the value of the receiver. +1.130.2 PositionableStream: accessing-reading +--------------------------------------------- -value: anObject - Set the value of the receiver. +close + Disassociate a stream from its backing store. +contents + Returns a collection of the same type that the stream accesses, up + to and including the final element. - -File: gst-base.info, Node: Promise-initializing, Next: Promise-printing, Prev: Promise-accessing, Up: Promise +copyFrom: start to: end + Answer the data on which the receiver is streaming, from the + start-th item to the end-th. Note that this method is 0-based, + unlike the one in Collection, because a Stream's #position method + returns 0-based values. -1.130.3 Promise: initializing ------------------------------ +next + Answer the next item of the receiver. Returns nil when at end of + stream. -initialize - Private - set the initial state of the receiver +nextAvailable: anInteger into: aCollection startingAt: pos + Place up to anInteger objects from the receiver into aCollection, + starting from position pos in the collection and stopping if no + more data is available. + +nextAvailable: anInteger putAllOn: aStream + Copy up to anInteger objects from the receiver into aStream, + stopping if no more data is available. +peek + Returns the next element of the stream without moving the pointer. + Returns nil when at end of stream. - -File: gst-base.info, Node: Promise-printing, Next: Promise-still unclassified, Prev: Promise-initializing, Up: Promise +peekFor: anObject + Returns true and gobbles the next element from the stream of it is + equal to anObject, returns false and doesn't gobble the next + element if the next element is not equal to anObject. -1.130.4 Promise: printing -------------------------- +readStream + Answer a ReadStream on the same contents as the receiver -printOn: aStream - Print a representation of the receiver +reverseContents + Returns a collection of the same type that the stream accesses, up + to and including the final element, but in reverse order.  -File: gst-base.info, Node: Promise-still unclassified, Prev: Promise-printing, Up: Promise +File: gst-base.info, Node: PositionableStream-class type methods, Next: PositionableStream-compiling, Prev: PositionableStream-accessing-reading, Up: PositionableStream -1.130.5 Promise: still unclassified ------------------------------------ +1.130.3 PositionableStream: class type methods +---------------------------------------------- -errorValue: anException - Private - Raise anException whenever #value is called. +isExternalStream + We stream on a collection residing in the image, so answer false + +species + Return the type of the collections returned by #upTo: etc., which + are the same kind as those returned by the collection with methods + such as #select:.  -File: gst-base.info, Node: Random, Next: ReadStream, Prev: Promise, Up: Base classes +File: gst-base.info, Node: PositionableStream-compiling, Next: PositionableStream-positioning, Prev: PositionableStream-class type methods, Up: PositionableStream -1.131 Random -============ +1.130.4 PositionableStream: compiling +------------------------------------- -Defined in namespace Smalltalk -Superclass: Stream -Category: Streams - My instances are generator streams that produce random numbers, - which are floating point values between 0 and 1. +name + Answer a string that represents what the receiver is streaming on -* Menu: +segmentFrom: startPos to: endPos + Answer an object that, when sent #asString, will yield the result + of sending `copyFrom: startPos to: endPos' to the receiver -* Random class-instance creation:: (class) -* Random class-shortcuts:: (class) -* Random-basic:: (instance) -* Random-testing:: (instance)  -File: gst-base.info, Node: Random class-instance creation, Next: Random class-shortcuts, Up: Random +File: gst-base.info, Node: PositionableStream-positioning, Next: PositionableStream-still unclassified, Prev: PositionableStream-compiling, Up: PositionableStream -1.131.1 Random class: instance creation +1.130.5 PositionableStream: positioning --------------------------------------- -new - Create a new random number generator whose seed is given by the - current time on the millisecond clock +basicPosition: anInteger + Move the stream pointer to the anInteger-th object -seed: aFloat - Create a new random number generator whose seed is aFloat +isPositionable + Answer true if the stream supports moving backwards with #skip:. +position + Answer the current value of the stream pointer - -File: gst-base.info, Node: Random class-shortcuts, Next: Random-basic, Prev: Random class-instance creation, Up: Random +position: anInteger + Move the stream pointer to the anInteger-th object -1.131.2 Random class: shortcuts -------------------------------- +reset + Move the stream back to its first element. For write-only streams, + the stream is truncated there. -between: low and: high - Return a random integer between the given extrema +setToEnd + Move the current position to the end of the stream. -next - Return a random number between 0 and 1 (excluded) +size + Answer the size of data on which we are streaming. -source - Return a standard source of random numbers. +skip: anInteger + Move the current position by anInteger places, either forwards or + backwards.  -File: gst-base.info, Node: Random-basic, Next: Random-testing, Prev: Random class-shortcuts, Up: Random +File: gst-base.info, Node: PositionableStream-still unclassified, Next: PositionableStream-testing, Prev: PositionableStream-positioning, Up: PositionableStream -1.131.3 Random: basic ---------------------- +1.130.6 PositionableStream: still unclassified +---------------------------------------------- -atEnd - This stream never ends. Always answer false. +nextPutAllOn: aStream + Write all the objects in the receiver to aStream. -between: low and: high - Return a random integer between low and high. -next - Return the next random number in the sequence. + +File: gst-base.info, Node: PositionableStream-testing, Next: PositionableStream-truncating, Prev: PositionableStream-still unclassified, Up: PositionableStream -nextPut: value - This method should not be called for instances of this class. +1.130.7 PositionableStream: testing +----------------------------------- +atEnd + Answer whether the objects in the stream have reached an end - -File: gst-base.info, Node: Random-testing, Prev: Random-basic, Up: Random +basicAtEnd + Answer whether the objects in the stream have reached an end. + This method must NOT be overridden. -1.131.4 Random: testing ------------------------ +isEmpty + Answer whether the stream has no objects -chiSquare - Compute the chi-square of the random that this class generates. -chiSquare: n range: r - Return the chi-square deduced from calculating n random numbers in - the 0..r range. + +File: gst-base.info, Node: PositionableStream-truncating, Prev: PositionableStream-testing, Up: PositionableStream + +1.130.8 PositionableStream: truncating +-------------------------------------- + +truncate + Truncate the receiver to the current position - only valid for + writing streams  -File: gst-base.info, Node: ReadStream, Next: ReadWriteStream, Prev: Random, Up: Base classes +File: gst-base.info, Node: Process, Next: ProcessEnvironment, Prev: PositionableStream, Up: Base classes -1.132 ReadStream -================ +1.131 Process +============= Defined in namespace Smalltalk -Superclass: PositionableStream -Category: Streams-Collections - I implement the set of read-only stream objects. You may read from - my objects, but you may not write to them. +Superclass: Link +Category: Language-Processes + I represent a unit of computation. My instances are independantly + executable blocks that have a priority associated with them, and + they can suspend themselves and resume themselves however they + wish. * Menu: -* ReadStream class-instance creation:: (class) +* Process-accessing:: (instance) +* Process-basic:: (instance) +* Process-builtins:: (instance) +* Process-printing:: (instance)  -File: gst-base.info, Node: ReadStream class-instance creation, Up: ReadStream - -1.132.1 ReadStream class: instance creation -------------------------------------------- +File: gst-base.info, Node: Process-accessing, Next: Process-basic, Up: Process -on: aCollection - Answer a new stream working on aCollection from its start. +1.131.1 Process: accessing +-------------------------- -on: aCollection from: firstIndex to: lastIndex - Answer an instance of the receiver streaming from the - firstIndex-th item of aCollection to the lastIndex-th +externalInterruptsEnabled + Answer whether the receiver is executed with interrupts enabled +name + Answer the user-friendly name of the process. - -File: gst-base.info, Node: ReadWriteStream, Next: Rectangle, Prev: ReadStream, Up: Base classes +name: aString + Give the name aString to the process -1.133 ReadWriteStream -===================== +priority + Answer the receiver's priority -Defined in namespace Smalltalk -Superclass: WriteStream -Category: Streams-Collections - I am the class of streams that may be read and written from - simultaneously. In some sense, I am the best of both ReadStream - and WriteStream. +priority: anInteger + Change the receiver's priority to anInteger -* Menu: +queueInterrupt: aBlock + Force the receiver to be interrupted and to evaluate aBlock as + soon as it becomes the active process (this could mean NOW if the + receiver is active). If the process is temporarily suspended or + waiting on a semaphore, it is temporarily woken up so that the + interrupt is processed as soon as the process priority allows to + do. Answer the receiver. -* ReadWriteStream class-instance creation:: (class) -* ReadWriteStream-positioning:: (instance) +suspendedContext + Answer the context that the process was executing at the time it + was suspended. - -File: gst-base.info, Node: ReadWriteStream class-instance creation, Next: ReadWriteStream-positioning, Up: ReadWriteStream +valueWithoutInterrupts: aBlock + Evaluate aBlock and delay all interrupts that are requested during + its execution to after aBlock returns. -1.133.1 ReadWriteStream class: instance creation ------------------------------------------------- -on: aCollection - Answer a new stream working on aCollection from its start. The - stream starts at the front of aCollection. + +File: gst-base.info, Node: Process-basic, Next: Process-builtins, Prev: Process-accessing, Up: Process -on: aCollection from: firstIndex to: lastIndex - Answer an instance of the receiver streaming from the - firstIndex-th item of aCollection to the lastIndex-th +1.131.2 Process: basic +---------------------- -with: aCollection - Answer a new instance of the receiver which streams from the end - of aCollection. +context + Return the execution context of the receiver. +debugger + Return the object in charge of debugging the receiver. This + always returns nil unless the DebugTools package is loaded. - -File: gst-base.info, Node: ReadWriteStream-positioning, Prev: ReadWriteStream class-instance creation, Up: ReadWriteStream +finalize + Terminate processes that are GCed while waiting on a dead + semaphore. -1.133.2 ReadWriteStream: positioning ------------------------------------- +lowerPriority + Lower a bit the priority of the receiver. A #lowerPriority will + cancel a previous #raisePriority, and vice versa. -contents - Unlike WriteStreams, ReadWriteStreams return the whole contents of - the underlying collection. +makeUntrusted: aBoolean + Set whether the receiver is trusted or not. +primTerminate + Terminate the receiver - This is nothing more than prohibiting to + resume the process, then suspending it. - -File: gst-base.info, Node: Rectangle, Next: RecursionLock, Prev: ReadWriteStream, Up: Base classes +raisePriority + Raise a bit the priority of the receiver. A #lowerPriority will + cancel a previous #raisePriority, and vice versa. -1.134 Rectangle -=============== +singleStep + Execute a limited amount of code (usually a bytecode, or up to the + next backward jump, or up to the next message send) of the + receiver, which must in a ready-to-run state (neither executing + nor terminating nor suspended), then restart running the current + process. The current process should have higher priority than the + receiver. For better performance, use the underlying primitive, + Process>>#singleStepWaitingOn:. -Defined in namespace Smalltalk -Superclass: Object -Category: Language-Data types - Beginning of the Rectangle class for simple display manipulation. - Rectangles require the Point class to be available. An extension - to the Point class is made here that since it requires Rectangles - to be defined (see converting) +terminate + Terminate the receiver after having evaluated all the #ensure: and + #ifCurtailed: blocks that are active in it. This is done by + signalling a ProcessBeingTerminated notification. -* Menu: +terminateOnQuit + Mark the receiver so that it is terminated when ObjectMemory + class>>#quit: is sent. -* Rectangle class-instance creation:: (class) -* Rectangle-accessing:: (instance) -* Rectangle-copying:: (instance) -* Rectangle-printing:: (instance) -* Rectangle-rectangle functions:: (instance) -* Rectangle-testing:: (instance) -* Rectangle-transforming:: (instance) -* Rectangle-truncation and round off:: (instance)  -File: gst-base.info, Node: Rectangle class-instance creation, Next: Rectangle-accessing, Up: Rectangle +File: gst-base.info, Node: Process-builtins, Next: Process-printing, Prev: Process-basic, Up: Process -1.134.1 Rectangle class: instance creation ------------------------------------------- +1.131.3 Process: builtins +------------------------- -left: leftNumber right: rightNumber top: topNumber bottom: bottomNumber - Answer a rectangle with the given coordinates +resume + Resume the receiver's execution -new - Answer the (0 @ 0 corner: 0 @ 0) rectangle +singleStepWaitingOn: aSemaphore + Execute a limited amount of code (usually a bytecode, or up to the + next backward jump, or up to the next message send) of the + receiver, which must in a ready-to-run state (neither executing + nor terminating nor suspended), then restart running the current + process. aSemaphore is used as a means to synchronize the + execution of the current process and the receiver and should have + no signals on it. The current process should have higher priority + than the receiver. -origin: originPoint corner: cornerPoint - Answer a rectangle with the given corners +suspend + Do nothing if we're already suspended. Note that the blue book made + suspend a primitive - but the real primitive is yielding control to + another process. Suspending is nothing more than taking ourselves + out of every scheduling list and THEN yielding control to another + process -origin: originPoint extent: extentPoint - Answer a rectangle with the given origin and size +yield + Yield control from the receiver to other processes  -File: gst-base.info, Node: Rectangle-accessing, Next: Rectangle-copying, Prev: Rectangle class-instance creation, Up: Rectangle +File: gst-base.info, Node: Process-printing, Prev: Process-builtins, Up: Process -1.134.2 Rectangle: accessing ----------------------------- +1.131.4 Process: printing +------------------------- -bottom - Answer the corner's y of the receiver +printOn: aStream + Print a representation of the receiver on aStream -bottom: aNumber - Set the corner's y of the receiver -bottomCenter - Answer the center of the receiver's bottom side + +File: gst-base.info, Node: ProcessEnvironment, Next: ProcessorScheduler, Prev: Process, Up: Base classes -bottomLeft - Answer the bottom-left corner of the receiver +1.132 ProcessEnvironment +======================== -bottomLeft: aPoint - Answer the receiver with the bottom-left changed to aPoint +Defined in namespace Smalltalk +Superclass: Object +Category: Language-Processes + I represent a proxy for thread-local variables defined for + Smalltalk processes. Associations requested to me retrieve the + thread-local value for the current process. For now, I don't + provide the full protocol of a Dictionary; in particular the + iteration protocol is absent. -bottomRight - Answer the bottom-right corner of the receiver +* Menu: -bottomRight: aPoint - Change the bottom-right corner of the receiver +* ProcessEnvironment class-disabled:: (class) +* ProcessEnvironment class-singleton:: (class) +* ProcessEnvironment-accessing:: (instance) +* ProcessEnvironment-dictionary removing:: (instance) +* ProcessEnvironment-dictionary testing:: (instance) -center - Answer the center of the receiver + +File: gst-base.info, Node: ProcessEnvironment class-disabled, Next: ProcessEnvironment class-singleton, Up: ProcessEnvironment -corner - Answer the corner of the receiver +1.132.1 ProcessEnvironment class: disabled +------------------------------------------ -corner: aPoint - Set the corner of the receiver +new + This method should not be called for instances of this class. -extent - Answer the extent of the receiver -extent: aPoint - Change the size of the receiver, keeping the origin the same + +File: gst-base.info, Node: ProcessEnvironment class-singleton, Next: ProcessEnvironment-accessing, Prev: ProcessEnvironment class-disabled, Up: ProcessEnvironment -height - Answer the height of the receiver +1.132.2 ProcessEnvironment class: singleton +------------------------------------------- -height: aNumber - Set the height of the receiver +uniqueInstance + Return the singleton instance of ProcessEnvironment. -left - Answer the x of the left edge of the receiver -left: aValue - Set the x of the left edge of the receiver + +File: gst-base.info, Node: ProcessEnvironment-accessing, Next: ProcessEnvironment-dictionary removing, Prev: ProcessEnvironment class-singleton, Up: ProcessEnvironment -left: l top: t right: r bottom: b - Change all four the coordinates of the receiver's corners +1.132.3 ProcessEnvironment: accessing +------------------------------------- -leftCenter - Answer the center of the receiver's left side +add: newObject + Add the newObject association to the receiver -origin - Answer the top-left corner of the receiver +associationAt: key + Answer the value associated to the given key, or the result of + evaluating aBlock if the key is not found -origin: aPoint - Change the top-left corner of the receiver to aPoint +associationAt: key ifAbsent: aBlock + Answer the value associated to the given key, or the result of + evaluating aBlock if the key is not found -origin: pnt1 corner: pnt2 - Change both the origin (top-left corner) and the corner - (bottom-right corner) of the receiver +at: key + Answer the value associated to the given key. Return nil if the key + is not found -origin: pnt1 extent: pnt2 - Change the top-left corner and the size of the receiver +at: key ifAbsent: aBlock + Answer the value associated to the given key, or the result of + evaluating aBlock if the key is not found -right - Answer the x of the bottom-right corner of the receiver +at: key ifAbsentPut: aBlock + Answer the value associated to the given key, setting it to the + result of evaluating aBlock if the key is not found. -right: aNumber - Change the x of the bottom-right corner of the receiver +at: key ifPresent: aBlock + Answer the value associated to the given key, or the result of + evaluating aBlock if the key is not found -rightCenter - Answer the center of the receiver's right side +at: key put: value + Store value as associated to the given key -top - Answer the y of the receiver's top-left corner +keys + Answer a kind of Set containing the keys of the receiver -top: aValue - Change the y of the receiver's top-left corner -topCenter - Answer the center of the receiver's top side + +File: gst-base.info, Node: ProcessEnvironment-dictionary removing, Next: ProcessEnvironment-dictionary testing, Prev: ProcessEnvironment-accessing, Up: ProcessEnvironment -topLeft - Answer the receiver's top-left corner +1.132.4 ProcessEnvironment: dictionary removing +----------------------------------------------- -topLeft: aPoint - Change the receiver's top-left corner's coordinates to aPoint +remove: anAssociation + Remove anAssociation's key from the dictionary -topRight - Answer the receiver's top-right corner +remove: anAssociation ifAbsent: aBlock + Remove anAssociation's key from the dictionary -topRight: aPoint - Change the receiver's top-right corner to aPoint +removeAllKeys: keys + Remove all the keys in keys, without raising any errors -width - Answer the receiver's width +removeAllKeys: keys ifAbsent: aBlock + Remove all the keys in keys, passing the missing keys as parameters + to aBlock as they're encountered -width: aNumber - Change the receiver's width to aNumber +removeKey: aSymbol + Remove the aSymbol key from the dictionary + +removeKey: aSymbol ifAbsent: aBlock + Remove the aSymbol key from the dictionary  -File: gst-base.info, Node: Rectangle-copying, Next: Rectangle-printing, Prev: Rectangle-accessing, Up: Rectangle +File: gst-base.info, Node: ProcessEnvironment-dictionary testing, Prev: ProcessEnvironment-dictionary removing, Up: ProcessEnvironment -1.134.3 Rectangle: copying --------------------------- +1.132.5 ProcessEnvironment: dictionary testing +---------------------------------------------- -copy - Return a deep copy of the receiver for safety. +includesKey: key + Answer whether the receiver contains the given key  -File: gst-base.info, Node: Rectangle-printing, Next: Rectangle-rectangle functions, Prev: Rectangle-copying, Up: Rectangle +File: gst-base.info, Node: ProcessorScheduler, Next: Promise, Prev: ProcessEnvironment, Up: Base classes -1.134.4 Rectangle: printing ---------------------------- +1.133 ProcessorScheduler +======================== -printOn: aStream - Print a representation of the receiver on aStream +Defined in namespace Smalltalk +Superclass: Object +Category: Language-Processes + I provide methods that control the execution of processes. -storeOn: aStream - Store Smalltalk code compiling to the receiver on aStream +* Menu: +* ProcessorScheduler class-instance creation:: (class) +* ProcessorScheduler-basic:: (instance) +* ProcessorScheduler-built ins:: (instance) +* ProcessorScheduler-idle tasks:: (instance) +* ProcessorScheduler-printing:: (instance) +* ProcessorScheduler-priorities:: (instance) +* ProcessorScheduler-storing:: (instance) +* ProcessorScheduler-timed invocation:: (instance)  -File: gst-base.info, Node: Rectangle-rectangle functions, Next: Rectangle-testing, Prev: Rectangle-printing, Up: Rectangle +File: gst-base.info, Node: ProcessorScheduler class-instance creation, Next: ProcessorScheduler-basic, Up: ProcessorScheduler -1.134.5 Rectangle: rectangle functions --------------------------------------- +1.133.1 ProcessorScheduler class: instance creation +--------------------------------------------------- -amountToTranslateWithin: aRectangle - Answer a Point so that if aRectangle is translated by that point, - its origin lies within the receiver's. +new + Error--new instances of ProcessorScheduler should not be created. -area - Answer the receiver's area. The area is the width times the height, - so it is possible for it to be negative if the rectangle is not - normalized. -areasOutside: aRectangle - Answer a collection of rectangles containing the parts of the - receiver outside of aRectangle. For all points in the receiver, - but outside aRectangle, exactly one rectangle in the collection - will contain that point. + +File: gst-base.info, Node: ProcessorScheduler-basic, Next: ProcessorScheduler-built ins, Prev: ProcessorScheduler class-instance creation, Up: ProcessorScheduler -expandBy: delta - Answer a new rectangle that is the receiver expanded by aValue: if - aValue is a rectangle, calculate origin=origin-aValue origin, - corner=corner+aValue corner; else calculate origin=origin-aValue, - corner=corner+aValue. +1.133.2 ProcessorScheduler: basic +--------------------------------- -insetBy: delta - Answer a new rectangle that is the receiver inset by aValue: if - aValue is a rectangle, calculate origin=origin+aValue origin, - corner=corner-aValue corner; else calculate origin=origin+aValue, - corner=corner-aValue. +activeDebugger + Answer the active process' debugger -insetOriginBy: originDelta corner: cornerDelta - Answer a new rectangle that is the receiver inset so that - origin=origin+originDelta, corner=corner-cornerDelta. The deltas - can be points or numbers +activePriority + Answer the active process' priority -intersect: aRectangle - Answers the rectangle (if any) created by the overlap of - rectangles A and B. Answers nil if the rectangles do not overlap +activeProcess + Answer the active process -merge: aRectangle - Answer a new rectangle which is the smallest rectangle containing - both the receiver and aRectangle. +processEnvironment + Answer another singleton object hosting thread-local variables for + the Smalltalk processes. This acts like a normal Dictionary with + a couple of differences: a) using #associationAt: will return + special associations that retrieve a thread-local value; b) + requesting missing keys will return nil, and removing them will be + a nop. -translatedToBeWithin: aRectangle - Answer a copy of the receiver that does not extend beyond - aRectangle. +processesAt: aPriority + Answer a linked list of processes at the given priority +terminateActive + Terminate the active process - -File: gst-base.info, Node: Rectangle-testing, Next: Rectangle-transforming, Prev: Rectangle-rectangle functions, Up: Rectangle +timeSlice + Answer the timeslice that is assigned to each Process before it is + automatically preempted by the system (in milliseconds). An + answer of zero means that preemptive multitasking is disabled. + Note that the system by default is compiled without preemptive + multitasking, and that even if it is enabled it will work only + under BSD derivatives (or, in general, systems that support + ITIMER_VIRTUAL). -1.134.6 Rectangle: testing --------------------------- +timeSlice: milliSeconds + Set the timeslice that is assigned to each Process before it is + automatically preempted by the system. Setting this to zero + disables preemptive multitasking. Note that the system by default + is compiled with preemptive multitasking disabled, and that even + if it is enabled it will surely work only under BSD derivatives + (or, in general, systems that support ITIMER_VIRTUAL). -= aRectangle - Answer whether the receiver is equal to aRectangle +yield + Let the active process yield control to other processes -contains: aRectangle - Answer true if the receiver contains (see containsPoint:) both - aRectangle's origin and aRectangle's corner -containsPoint: aPoint - Answer true if aPoint is equal to, or below and to the right of, - the receiver's origin; and aPoint is above and to the left of the - receiver's corner + +File: gst-base.info, Node: ProcessorScheduler-built ins, Next: ProcessorScheduler-idle tasks, Prev: ProcessorScheduler-basic, Up: ProcessorScheduler -hash - Answer an hash value for the receiver +1.133.3 ProcessorScheduler: built ins +------------------------------------- -intersects: aRectangle - Answer true if the receiver intersect aRectangle, i.e. if it - contains (see containsPoint:) any of aRectangle corners or if - aRectangle contains the receiver + twice + +disableInterrupts + Disable interrupts caused by external events while the current + process is executing. Note that interrupts are disabled on a + per-process basis, and that calling #disableInterrupts twice + requires calling #enableInterrupts twice as well to re-enable + interrupts. + +enableInterrupts + Re-enable interrupts caused by external events while the current + process is executing. By default, interrupts are enabled.  -File: gst-base.info, Node: Rectangle-transforming, Next: Rectangle-truncation and round off, Prev: Rectangle-testing, Up: Rectangle - -1.134.7 Rectangle: transforming -------------------------------- +File: gst-base.info, Node: ProcessorScheduler-idle tasks, Next: ProcessorScheduler-printing, Prev: ProcessorScheduler-built ins, Up: ProcessorScheduler -moveBy: aPoint - Change the receiver so that the origin and corner are shifted by - aPoint +1.133.4 ProcessorScheduler: idle tasks +-------------------------------------- -moveTo: aPoint - Change the receiver so that the origin moves to aPoint and the size - remains unchanged +idle + Private - Call the next idle task -scaleBy: scale - Answer a copy of the receiver in which the origin and corner are - multiplied by scale +idleAdd: aBlock + Register aBlock to be executed when things are idle -translateBy: factor - Answer a copy of the receiver in which the origin and corner are - shifted by aPoint +initialize + Private - Start the finalization process. + +update: aSymbol + If we left some work behind when the image was saved, do it now.  -File: gst-base.info, Node: Rectangle-truncation and round off, Prev: Rectangle-transforming, Up: Rectangle +File: gst-base.info, Node: ProcessorScheduler-printing, Next: ProcessorScheduler-priorities, Prev: ProcessorScheduler-idle tasks, Up: ProcessorScheduler -1.134.8 Rectangle: truncation and round off -------------------------------------------- +1.133.5 ProcessorScheduler: printing +------------------------------------ -rounded - Answer a copy of the receiver with the coordinates rounded to the - nearest integers +printOn: aStream + Store onto aStream a printed representation of the receiver  -File: gst-base.info, Node: RecursionLock, Next: Regex, Prev: Rectangle, Up: Base classes - -1.135 RecursionLock -=================== - -Defined in namespace Smalltalk -Superclass: Object -Category: Language-Processes +File: gst-base.info, Node: ProcessorScheduler-priorities, Next: ProcessorScheduler-storing, Prev: ProcessorScheduler-printing, Up: ProcessorScheduler -* Menu: +1.133.6 ProcessorScheduler: priorities +-------------------------------------- -* RecursionLock class-instance creation:: (class) -* RecursionLock-accessing:: (instance) -* RecursionLock-mutual exclusion:: (instance) -* RecursionLock-printing:: (instance) +highIOPriority + Answer the priority for system high-priority I/O processes, such + as a process handling input from a network. - -File: gst-base.info, Node: RecursionLock class-instance creation, Next: RecursionLock-accessing, Up: RecursionLock +highestPriority + Answer the highest valid priority -1.135.1 RecursionLock class: instance creation ----------------------------------------------- +lowIOPriority + Answer the priority for system low-priority I/O processes. + Examples are the process handling input from the user (keyboard, + pointing device, etc.) and the process distributing input from a + network. -new - Answer a new semaphore +lowestPriority + Answer the lowest valid priority +priorityName: priority + Private - Answer a name for the given process priority - -File: gst-base.info, Node: RecursionLock-accessing, Next: RecursionLock-mutual exclusion, Prev: RecursionLock class-instance creation, Up: RecursionLock +rockBottomPriority + Answer the lowest valid priority -1.135.2 RecursionLock: accessing --------------------------------- +systemBackgroundPriority + Answer the priority for system background-priority processes. + Examples are an incremental garbage collector or status checker. -isOwnerProcess - Answer whether the receiver is the owner of the lock. +timingPriority + Answer the priority for system real-time processes. -name - Answer a user-defined name for the lock. +unpreemptedPriority + Answer the highest priority avilable in the system; never create a + process with this priority, instead use + BlockClosure>>#valueWithoutPreemption. -name: aString - Set to aString the user-defined name for the lock. +userBackgroundPriority + Answer the priority for user background-priority processes -waitingProcesses - Answer the set of processes that are waiting on the semaphore. +userInterruptPriority + Answer the priority for user interrupt-priority processes. + Processes run at this level will preempt the window scheduler and + should, therefore, not consume the processor forever. -wouldBlock - Answer whether sending #wait to the receiver would suspend the - active process. +userSchedulingPriority + Answer the priority for user standard-priority processes  -File: gst-base.info, Node: RecursionLock-mutual exclusion, Next: RecursionLock-printing, Prev: RecursionLock-accessing, Up: RecursionLock +File: gst-base.info, Node: ProcessorScheduler-storing, Next: ProcessorScheduler-timed invocation, Prev: ProcessorScheduler-priorities, Up: ProcessorScheduler -1.135.3 RecursionLock: mutual exclusion ---------------------------------------- +1.133.7 ProcessorScheduler: storing +----------------------------------- -critical: aBlock - Wait for the receiver to be free, execute aBlock and signal the - receiver again. Return the result of evaluating aBlock. +storeOn: aStream + Store onto aStream a Smalltalk expression which evaluates to the + receiver  -File: gst-base.info, Node: RecursionLock-printing, Prev: RecursionLock-mutual exclusion, Up: RecursionLock +File: gst-base.info, Node: ProcessorScheduler-timed invocation, Prev: ProcessorScheduler-storing, Up: ProcessorScheduler -1.135.4 RecursionLock: printing -------------------------------- +1.133.8 ProcessorScheduler: timed invocation +-------------------------------------------- -printOn: aStream - Print a human-readable represention of the receiver on aStream. +isTimeoutProgrammed + Private - Answer whether there is a pending call to + #signal:atMilliseconds: + +signal: aSemaphore atMilliseconds: millis + Private - signal 'aSemaphore' after 'millis' milliseconds have + elapsed + +signal: aSemaphore onInterrupt: anIntegerSignalNumber + Signal 'aSemaphore' when the given C signal occurs.  -File: gst-base.info, Node: Regex, Next: RegexResults, Prev: RecursionLock, Up: Base classes +File: gst-base.info, Node: Promise, Next: Random, Prev: ProcessorScheduler, Up: Base classes -1.136 Regex -=========== +1.134 Promise +============= Defined in namespace Smalltalk -Superclass: Object -Category: Collections-Text - A Regex is a read-only string for which the regular expression - matcher can cache a compiled representation, thus speeding up - matching. Regex objects are constructed automatically by methods - that expect to match many times the same regular expression, but - can also be constructed explicitly sending #asRegex to a String or - Symbol. - - Creation of Regex objects inside a loop is of course slower than - creating them outside the loop, but special care is taken so that - the same Regex object is used whenever possible (when converting - Strings to Regex, the cache is sought for an equivalent, already - constructed Regex). +Superclass: ValueHolder +Category: Language-Data types + I store my value in a variable, and know whether I have been + initialized or not. If you ask for my value and I have not been + initialized, I suspend the process until a value has been assigned. * Menu: -* Regex class-instance creation:: (class) -* Regex-basic:: (instance) -* Regex-conversion:: (instance) -* Regex-printing:: (instance) +* Promise class-creating instances:: (class) +* Promise-accessing:: (instance) +* Promise-initializing:: (instance) +* Promise-printing:: (instance) +* Promise-still unclassified:: (instance)  -File: gst-base.info, Node: Regex class-instance creation, Next: Regex-basic, Up: Regex +File: gst-base.info, Node: Promise class-creating instances, Next: Promise-accessing, Up: Promise -1.136.1 Regex class: instance creation --------------------------------------- +1.134.1 Promise class: creating instances +----------------------------------------- -fromString: aString - Like `aString asRegex'. +for: aBlock + Invoke aBlock at an indeterminate time in an indeterminate process + before answering its value from #value sent to my result. -new - Do not send this message. +null + This method should not be called for instances of this class.  -File: gst-base.info, Node: Regex-basic, Next: Regex-conversion, Prev: Regex class-instance creation, Up: Regex +File: gst-base.info, Node: Promise-accessing, Next: Promise-initializing, Prev: Promise class-creating instances, Up: Promise -1.136.2 Regex: basic --------------------- +1.134.2 Promise: accessing +-------------------------- -at: anIndex put: anObject - Fail. Regex objects are read-only. +hasError + Answer whether calling #value will raise an exception. -copy - Answer the receiver; instances of Regex are identity objects - because their only purpose is to ease caching, and we obtain - better caching if we avoid copying Regex objects +hasValue + Answer whether we already have a value (or calling #value will + raise an error). +value + Get the value of the receiver. - -File: gst-base.info, Node: Regex-conversion, Next: Regex-printing, Prev: Regex-basic, Up: Regex +value: anObject + Set the value of the receiver. -1.136.3 Regex: conversion -------------------------- -asRegex - Answer the receiver, which *is* a Regex! + +File: gst-base.info, Node: Promise-initializing, Next: Promise-printing, Prev: Promise-accessing, Up: Promise -asString - Answer the receiver, converted back to a String +1.134.3 Promise: initializing +----------------------------- -species - Answer `String'. +initialize + Private - set the initial state of the receiver  -File: gst-base.info, Node: Regex-printing, Prev: Regex-conversion, Up: Regex +File: gst-base.info, Node: Promise-printing, Next: Promise-still unclassified, Prev: Promise-initializing, Up: Promise -1.136.4 Regex: printing ------------------------ +1.134.4 Promise: printing +------------------------- -displayOn: aStream - Print a represention of the receiver on aStream. For most objects - this is simply its #printOn: representation, but for strings and - characters, superfluous dollars or extra pairs of quotes are - stripped. +printOn: aStream + Print a representation of the receiver -displayString - Answer a String representing the receiver. For most objects this - is simply its #printString, but for strings and characters, - superfluous dollars or extra pair of quotes are stripped. -printOn: aStream - Print a represention of the receiver on aStream. + +File: gst-base.info, Node: Promise-still unclassified, Prev: Promise-printing, Up: Promise + +1.134.5 Promise: still unclassified +----------------------------------- + +errorValue: anException + Private - Raise anException whenever #value is called.  -File: gst-base.info, Node: RegexResults, Next: RootNamespace, Prev: Regex, Up: Base classes +File: gst-base.info, Node: Random, Next: ReadStream, Prev: Promise, Up: Base classes -1.137 RegexResults -================== +1.135 Random +============ Defined in namespace Smalltalk -Superclass: Object -Category: Collections-Text - I hold the results of a regular expression match, and I can - reconstruct which parts of the matched string were assigned to - each subexpression. Methods such as #=~ return RegexResults - objects, while others transform the string directly without - passing the results object back to the caller. +Superclass: Stream +Category: Streams + My instances are generator streams that produce random numbers, + which are floating point values between 0 and 1. * Menu: -* RegexResults-accessing:: (instance) -* RegexResults-testing:: (instance) +* Random class-instance creation:: (class) +* Random class-shortcuts:: (class) +* Random-basic:: (instance) +* Random-testing:: (instance)  -File: gst-base.info, Node: RegexResults-accessing, Next: RegexResults-testing, Up: RegexResults +File: gst-base.info, Node: Random class-instance creation, Next: Random class-shortcuts, Up: Random -1.137.1 RegexResults: accessing -------------------------------- +1.135.1 Random class: instance creation +--------------------------------------- -at: anIndex - If the regular expression was matched, return the text of the - anIndex-th subexpression in the successful match. +new + Create a new random number generator whose seed is given by the + current time on the millisecond clock -from - If the regular expression was matched, return the index of the - first character in the successful match. +seed: aFloat + Create a new random number generator whose seed is aFloat -fromAt: anIndex - If the regular expression was matched, return the index of the - first character of the anIndex-th subexpression in the successful - match. -intervalAt: anIndex - If the regular expression was matched, return an Interval for the - range of indices in the anIndex-th subexpression of the successful - match. + +File: gst-base.info, Node: Random class-shortcuts, Next: Random-basic, Prev: Random class-instance creation, Up: Random + +1.135.2 Random class: shortcuts +------------------------------- + +between: low and: high + Return a random integer between the given extrema -match - If the regular expression was matched, return the text of the - successful match. +next + Return a random number between 0 and 1 (excluded) -matchInterval - If the regular expression was matched, return an Interval for the - range of indices of the successful match. +source + Return a standard source of random numbers. -size - If the regular expression was matched, return the number of - subexpressions that were present in the regular expression. -subject - If the regular expression was matched, return the text that was - matched against it. + +File: gst-base.info, Node: Random-basic, Next: Random-testing, Prev: Random class-shortcuts, Up: Random -to - If the regular expression was matched, return the index of the - last character in the successful match. +1.135.3 Random: basic +--------------------- -toAt: anIndex - If the regular expression was matched, return the index of the last - character of the anIndex-th subexpression in the successful match. +atEnd + This stream never ends. Always answer false. +between: low and: high + Return a random integer between low and high. - -File: gst-base.info, Node: RegexResults-testing, Prev: RegexResults-accessing, Up: RegexResults +next + Return the next random number in the sequence. -1.137.2 RegexResults: testing ------------------------------ +nextPut: value + This method should not be called for instances of this class. -ifMatched: oneArgBlock - If the regular expression was matched, pass the receiver to - oneArgBlock and return its result. Otherwise, return nil. -ifMatched: oneArgBlock ifNotMatched: zeroArgBlock - If the regular expression was matched, evaluate oneArgBlock with - the receiver as the argument. If it was not, evaluate - zeroArgBlock. Answer the result of the block's evaluation. + +File: gst-base.info, Node: Random-testing, Prev: Random-basic, Up: Random -ifNotMatched: zeroArgBlock - If the regular expression was matched, return the receiver. If it - was not, evaluate zeroArgBlock and return its result. +1.135.4 Random: testing +----------------------- -ifNotMatched: zeroArgBlock ifMatched: oneArgBlock - If the regular expression was matched, evaluate oneArgBlock with - the receiver as the argument. If it was not, evaluate - zeroArgBlock. Answer the result of the block's evaluation. +chiSquare + Compute the chi-square of the random that this class generates. -matched - Answer whether the regular expression was matched +chiSquare: n range: r + Return the chi-square deduced from calculating n random numbers in + the 0..r range.  -File: gst-base.info, Node: RootNamespace, Next: RunArray, Prev: RegexResults, Up: Base classes +File: gst-base.info, Node: ReadStream, Next: ReadWriteStream, Prev: Random, Up: Base classes -1.138 RootNamespace -=================== +1.136 ReadStream +================ Defined in namespace Smalltalk -Superclass: AbstractNamespace -Category: Language-Implementation - I am a special form of dictionary. Classes hold on an instance of - me; it is called their `environment'. +Superclass: PositionableStream +Category: Streams-Collections + I implement the set of read-only stream objects. You may read from + my objects, but you may not write to them. * Menu: -* RootNamespace class-instance creation:: (class) -* RootNamespace-namespace hierarchy:: (instance) -* RootNamespace-overrides for superspaces:: (instance) -* RootNamespace-printing:: (instance) +* ReadStream class-instance creation:: (class)  -File: gst-base.info, Node: RootNamespace class-instance creation, Next: RootNamespace-namespace hierarchy, Up: RootNamespace +File: gst-base.info, Node: ReadStream class-instance creation, Up: ReadStream -1.138.1 RootNamespace class: instance creation ----------------------------------------------- +1.136.1 ReadStream class: instance creation +------------------------------------------- -new: spaceName - Create a new root namespace with the given name, and add to - Smalltalk a key that references it. +on: aCollection + Answer a new stream working on aCollection from its start. + +on: aCollection from: firstIndex to: lastIndex + Answer an instance of the receiver streaming from the + firstIndex-th item of aCollection to the lastIndex-th  -File: gst-base.info, Node: RootNamespace-namespace hierarchy, Next: RootNamespace-overrides for superspaces, Prev: RootNamespace class-instance creation, Up: RootNamespace +File: gst-base.info, Node: ReadWriteStream, Next: Rectangle, Prev: ReadStream, Up: Base classes -1.138.2 RootNamespace: namespace hierarchy ------------------------------------------- +1.137 ReadWriteStream +===================== -siblings - Answer all the other root namespaces +Defined in namespace Smalltalk +Superclass: WriteStream +Category: Streams-Collections + I am the class of streams that may be read and written from + simultaneously. In some sense, I am the best of both ReadStream + and WriteStream. -siblingsDo: aBlock - Evaluate aBlock once for each of the other root namespaces, - passing the namespace as a parameter. +* Menu: +* ReadWriteStream class-instance creation:: (class) +* ReadWriteStream-positioning:: (instance)  -File: gst-base.info, Node: RootNamespace-overrides for superspaces, Next: RootNamespace-printing, Prev: RootNamespace-namespace hierarchy, Up: RootNamespace +File: gst-base.info, Node: ReadWriteStream class-instance creation, Next: ReadWriteStream-positioning, Up: ReadWriteStream -1.138.3 RootNamespace: overrides for superspaces +1.137.1 ReadWriteStream class: instance creation ------------------------------------------------ -inheritedKeys - Answer a Set of all the keys in the receiver and its superspaces - -set: key to: newValue ifAbsent: aBlock - Assign newValue to the variable named as specified by `key'. This - method won't define a new variable; instead if the key is not - found it will search in superspaces and evaluate aBlock if it is - not found. Answer newValue. +on: aCollection + Answer a new stream working on aCollection from its start. The + stream starts at the front of aCollection. +on: aCollection from: firstIndex to: lastIndex + Answer an instance of the receiver streaming from the + firstIndex-th item of aCollection to the lastIndex-th - -File: gst-base.info, Node: RootNamespace-printing, Prev: RootNamespace-overrides for superspaces, Up: RootNamespace +with: aCollection + Answer a new instance of the receiver which streams from the end + of aCollection. -1.138.4 RootNamespace: printing -------------------------------- -nameIn: aNamespace - Answer Smalltalk code compiling to the receiver when the current - namespace is aNamespace + +File: gst-base.info, Node: ReadWriteStream-positioning, Prev: ReadWriteStream class-instance creation, Up: ReadWriteStream -printOn: aStream in: aNamespace - Print on aStream some Smalltalk code compiling to the receiver - when the current namespace is aNamespace +1.137.2 ReadWriteStream: positioning +------------------------------------ -storeOn: aStream - Store Smalltalk code compiling to the receiver +contents + Unlike WriteStreams, ReadWriteStreams return the whole contents of + the underlying collection.  -File: gst-base.info, Node: RunArray, Next: ScaledDecimal, Prev: RootNamespace, Up: Base classes +File: gst-base.info, Node: Rectangle, Next: RecursionLock, Prev: ReadWriteStream, Up: Base classes -1.139 RunArray -============== +1.138 Rectangle +=============== Defined in namespace Smalltalk -Superclass: OrderedCollection -Category: Collections-Sequenceable - My instances are OrderedCollections that automatically apply Run - Length Encoding compression to the things they store. Be careful - when using me: I can provide great space savings, but my instances - don't grant linear access time. RunArray's behavior currently is - similar to that of OrderedCollection (you can add elements to - RunArrays); maybe it should behave like an ArrayedCollection. +Superclass: Object +Category: Language-Data types + Beginning of the Rectangle class for simple display manipulation. + Rectangles require the Point class to be available. An extension + to the Point class is made here that since it requires Rectangles + to be defined (see converting) * Menu: -* RunArray class-instance creation:: (class) -* RunArray-accessing:: (instance) -* RunArray-adding:: (instance) -* RunArray-basic:: (instance) -* RunArray-copying:: (instance) -* RunArray-enumerating:: (instance) -* RunArray-removing:: (instance) -* RunArray-searching:: (instance) -* RunArray-testing:: (instance) +* Rectangle class-instance creation:: (class) +* Rectangle-accessing:: (instance) +* Rectangle-copying:: (instance) +* Rectangle-printing:: (instance) +* Rectangle-rectangle functions:: (instance) +* Rectangle-testing:: (instance) +* Rectangle-transforming:: (instance) +* Rectangle-truncation and round off:: (instance)  -File: gst-base.info, Node: RunArray class-instance creation, Next: RunArray-accessing, Up: RunArray +File: gst-base.info, Node: Rectangle class-instance creation, Next: Rectangle-accessing, Up: Rectangle -1.139.1 RunArray class: instance creation ------------------------------------------ +1.138.1 Rectangle class: instance creation +------------------------------------------ + +left: leftNumber right: rightNumber top: topNumber bottom: bottomNumber + Answer a rectangle with the given coordinates new - Answer an empty RunArray + Answer the (0 @ 0 corner: 0 @ 0) rectangle -new: aSize - Answer a RunArray with space for aSize runs +origin: originPoint corner: cornerPoint + Answer a rectangle with the given corners + +origin: originPoint extent: extentPoint + Answer a rectangle with the given origin and size  -File: gst-base.info, Node: RunArray-accessing, Next: RunArray-adding, Prev: RunArray class-instance creation, Up: RunArray +File: gst-base.info, Node: Rectangle-accessing, Next: Rectangle-copying, Prev: Rectangle class-instance creation, Up: Rectangle -1.139.2 RunArray: accessing ---------------------------- +1.138.2 Rectangle: accessing +---------------------------- -at: anIndex - Answer the element at index anIndex +bottom + Answer the corner's y of the receiver -at: anIndex put: anObject - Replace the element at index anIndex with anObject and answer - anObject +bottom: aNumber + Set the corner's y of the receiver +bottomCenter + Answer the center of the receiver's bottom side - -File: gst-base.info, Node: RunArray-adding, Next: RunArray-basic, Prev: RunArray-accessing, Up: RunArray +bottomLeft + Answer the bottom-left corner of the receiver -1.139.3 RunArray: adding ------------------------- +bottomLeft: aPoint + Answer the receiver with the bottom-left changed to aPoint -add: anObject afterIndex: anIndex - Add anObject after the element at index anIndex +bottomRight + Answer the bottom-right corner of the receiver -addAll: aCollection afterIndex: anIndex - Add all the elements of aCollection after the one at index - anIndex. If aCollection is unordered, its elements could be added - in an order which is not the #do: order +bottomRight: aPoint + Change the bottom-right corner of the receiver -addAllFirst: aCollection - Add all the elements of aCollection at the beginning of the - receiver. If aCollection is unordered, its elements could be added - in an order which is not the #do: order +center + Answer the center of the receiver -addAllLast: aCollection - Add all the elements of aCollection at the end of the receiver. If - aCol- lection is unordered, its elements could be added in an - order which is not the #do: order +corner + Answer the corner of the receiver + +corner: aPoint + Set the corner of the receiver + +extent + Answer the extent of the receiver + +extent: aPoint + Change the size of the receiver, keeping the origin the same + +height + Answer the height of the receiver + +height: aNumber + Set the height of the receiver + +left + Answer the x of the left edge of the receiver -addFirst: anObject - Add anObject at the beginning of the receiver. Watch out: this - operation can cause serious performance pitfalls +left: aValue + Set the x of the left edge of the receiver -addLast: anObject - Add anObject at the end of the receiver +left: l top: t right: r bottom: b + Change all four the coordinates of the receiver's corners +leftCenter + Answer the center of the receiver's left side - -File: gst-base.info, Node: RunArray-basic, Next: RunArray-copying, Prev: RunArray-adding, Up: RunArray +origin + Answer the top-left corner of the receiver -1.139.4 RunArray: basic ------------------------ +origin: aPoint + Change the top-left corner of the receiver to aPoint -first - Answer the first element in the receiver +origin: pnt1 corner: pnt2 + Change both the origin (top-left corner) and the corner + (bottom-right corner) of the receiver -last - Answer the last element of the receiver +origin: pnt1 extent: pnt2 + Change the top-left corner and the size of the receiver -size - Answer the number of elements in the receiver +right + Answer the x of the bottom-right corner of the receiver +right: aNumber + Change the x of the bottom-right corner of the receiver - -File: gst-base.info, Node: RunArray-copying, Next: RunArray-enumerating, Prev: RunArray-basic, Up: RunArray +rightCenter + Answer the center of the receiver's right side -1.139.5 RunArray: copying -------------------------- +top + Answer the y of the receiver's top-left corner -deepCopy - Answer a copy of the receiver containing copies of the receiver's - elements (#copy is used to obtain them) +top: aValue + Change the y of the receiver's top-left corner -shallowCopy - Answer a copy of the receiver. The elements are not copied +topCenter + Answer the center of the receiver's top side +topLeft + Answer the receiver's top-left corner - -File: gst-base.info, Node: RunArray-enumerating, Next: RunArray-removing, Prev: RunArray-copying, Up: RunArray +topLeft: aPoint + Change the receiver's top-left corner's coordinates to aPoint -1.139.6 RunArray: enumerating ------------------------------ +topRight + Answer the receiver's top-right corner -do: aBlock - Enumerate all the objects in the receiver, passing each one to - aBlock +topRight: aPoint + Change the receiver's top-right corner to aPoint -objectsAndRunLengthsDo: aBlock - Enumerate all the runs in the receiver, passing to aBlock two - parameters for every run: the first is the repeated object, the - second is the number of copies +width + Answer the receiver's width + +width: aNumber + Change the receiver's width to aNumber  -File: gst-base.info, Node: RunArray-removing, Next: RunArray-searching, Prev: RunArray-enumerating, Up: RunArray +File: gst-base.info, Node: Rectangle-copying, Next: Rectangle-printing, Prev: Rectangle-accessing, Up: Rectangle -1.139.7 RunArray: removing +1.138.3 Rectangle: copying -------------------------- -removeAtIndex: anIndex - Remove the object at index anIndex from the receiver and answer the - removed object - -removeFirst - Remove the first object from the receiver and answer the removed - object - -removeLast - Remove the last object from the receiver and answer the removed - object +copy + Return a deep copy of the receiver for safety.  -File: gst-base.info, Node: RunArray-searching, Next: RunArray-testing, Prev: RunArray-removing, Up: RunArray +File: gst-base.info, Node: Rectangle-printing, Next: Rectangle-rectangle functions, Prev: Rectangle-copying, Up: Rectangle -1.139.8 RunArray: searching +1.138.4 Rectangle: printing --------------------------- -indexOf: anObject startingAt: anIndex ifAbsent: aBlock - Answer the index of the first copy of anObject in the receiver, - starting the search at the element at index anIndex. If no equal - object is found, answer the result of evaluating aBlock +printOn: aStream + Print a representation of the receiver on aStream + +storeOn: aStream + Store Smalltalk code compiling to the receiver on aStream  -File: gst-base.info, Node: RunArray-testing, Prev: RunArray-searching, Up: RunArray +File: gst-base.info, Node: Rectangle-rectangle functions, Next: Rectangle-testing, Prev: Rectangle-printing, Up: Rectangle -1.139.9 RunArray: testing -------------------------- +1.138.5 Rectangle: rectangle functions +-------------------------------------- -= anObject - Answer true if the receiver is equal to anObject +amountToTranslateWithin: aRectangle + Answer a Point so that if aRectangle is translated by that point, + its origin lies within the receiver's. -hash - Answer an hash value for the receiver +area + Answer the receiver's area. The area is the width times the height, + so it is possible for it to be negative if the rectangle is not + normalized. +areasOutside: aRectangle + Answer a collection of rectangles containing the parts of the + receiver outside of aRectangle. For all points in the receiver, + but outside aRectangle, exactly one rectangle in the collection + will contain that point. - -File: gst-base.info, Node: ScaledDecimal, Next: SecurityPolicy, Prev: RunArray, Up: Base classes +expandBy: delta + Answer a new rectangle that is the receiver expanded by aValue: if + aValue is a rectangle, calculate origin=origin-aValue origin, + corner=corner+aValue corner; else calculate origin=origin-aValue, + corner=corner+aValue. -1.140 ScaledDecimal -=================== +insetBy: delta + Answer a new rectangle that is the receiver inset by aValue: if + aValue is a rectangle, calculate origin=origin+aValue origin, + corner=corner-aValue corner; else calculate origin=origin+aValue, + corner=corner-aValue. -Defined in namespace Smalltalk -Superclass: Number -Category: Language-Data types - ScaledDecimal provides a numeric representation of fixed point - decimal numbers able to accurately represent decimal fractions. - It supports unbounded precision, with no limit to the number of - digits before and after the decimal point. +insetOriginBy: originDelta corner: cornerDelta + Answer a new rectangle that is the receiver inset so that + origin=origin+originDelta, corner=corner-cornerDelta. The deltas + can be points or numbers -* Menu: +intersect: aRectangle + Answers the rectangle (if any) created by the overlap of + rectangles A and B. Answers nil if the rectangles do not overlap + +merge: aRectangle + Answer a new rectangle which is the smallest rectangle containing + both the receiver and aRectangle. + +translatedToBeWithin: aRectangle + Answer a copy of the receiver that does not extend beyond + aRectangle. -* ScaledDecimal class-instance creation:: (class) -* ScaledDecimal-arithmetic:: (instance) -* ScaledDecimal-coercion:: (instance) -* ScaledDecimal-comparing:: (instance) -* ScaledDecimal-constants:: (instance) -* ScaledDecimal-printing:: (instance) -* ScaledDecimal-storing:: (instance)  -File: gst-base.info, Node: ScaledDecimal class-instance creation, Next: ScaledDecimal-arithmetic, Up: ScaledDecimal +File: gst-base.info, Node: Rectangle-testing, Next: Rectangle-transforming, Prev: Rectangle-rectangle functions, Up: Rectangle -1.140.1 ScaledDecimal class: instance creation ----------------------------------------------- +1.138.6 Rectangle: testing +-------------------------- -newFromNumber: aNumber scale: scale - Answer a new instance of ScaledDecimal, representing a decimal - fraction with a decimal representation considered valid up to the - scale-th digit. += aRectangle + Answer whether the receiver is equal to aRectangle +contains: aRectangle + Answer true if the receiver contains (see containsPoint:) both + aRectangle's origin and aRectangle's corner - -File: gst-base.info, Node: ScaledDecimal-arithmetic, Next: ScaledDecimal-coercion, Prev: ScaledDecimal class-instance creation, Up: ScaledDecimal +containsPoint: aPoint + Answer true if aPoint is equal to, or below and to the right of, + the receiver's origin; and aPoint is above and to the left of the + receiver's corner -1.140.2 ScaledDecimal: arithmetic ---------------------------------- +hash + Answer an hash value for the receiver -* aNumber - Multiply two numbers and answer the result. +intersects: aRectangle + Answer true if the receiver intersect aRectangle, i.e. if it + contains (see containsPoint:) any of aRectangle corners or if + aRectangle contains the receiver -+ aNumber - Sum two numbers and answer the result. -- aNumber - Subtract aNumber from the receiver and answer the result. + +File: gst-base.info, Node: Rectangle-transforming, Next: Rectangle-truncation and round off, Prev: Rectangle-testing, Up: Rectangle -/ aNumber - Divide two numbers and answer the result. +1.138.7 Rectangle: transforming +------------------------------- -// aNumber - Answer the integer quotient after dividing the receiver by aNumber - with truncation towards negative infinity. +moveBy: aPoint + Change the receiver so that the origin and corner are shifted by + aPoint -\\ aNumber - Answer the remainder after integer division the receiver by aNumber - with truncation towards negative infinity. +moveTo: aPoint + Change the receiver so that the origin moves to aPoint and the size + remains unchanged +scaleBy: scale + Answer a copy of the receiver in which the origin and corner are + multiplied by scale - -File: gst-base.info, Node: ScaledDecimal-coercion, Next: ScaledDecimal-comparing, Prev: ScaledDecimal-arithmetic, Up: ScaledDecimal +translateBy: factor + Answer a copy of the receiver in which the origin and corner are + shifted by aPoint -1.140.3 ScaledDecimal: coercion -------------------------------- -asCNumber - Convert the receiver to a kind of number that is understood by the - C call-out mechanism. + +File: gst-base.info, Node: Rectangle-truncation and round off, Prev: Rectangle-transforming, Up: Rectangle -asFloatD - Answer the receiver, converted to a FloatD +1.138.8 Rectangle: truncation and round off +------------------------------------------- -asFloatE - Answer the receiver, converted to a FloatE +rounded + Answer a copy of the receiver with the coordinates rounded to the + nearest integers -asFloatQ - Answer the receiver, converted to a FloatQ -asFraction - Answer the receiver, converted to a Fraction + +File: gst-base.info, Node: RecursionLock, Next: Regex, Prev: Rectangle, Up: Base classes -ceiling - Answer the receiver, converted to an Integer and truncated towards - +infinity. +1.139 RecursionLock +=================== -coerce: aNumber - Answer aNumber, converted to a ScaledDecimal with the same scale - as the receiver. +Defined in namespace Smalltalk +Superclass: Object +Category: Language-Processes -fractionPart - Answer the fractional part of the receiver. +* Menu: + +* RecursionLock class-instance creation:: (class) +* RecursionLock-accessing:: (instance) +* RecursionLock-mutual exclusion:: (instance) +* RecursionLock-printing:: (instance) -generality - Return the receiver's generality + +File: gst-base.info, Node: RecursionLock class-instance creation, Next: RecursionLock-accessing, Up: RecursionLock -integerPart - Answer the fractional part of the receiver. +1.139.1 RecursionLock class: instance creation +---------------------------------------------- -truncated - Answer the receiver, converted to an Integer and truncated towards - -infinity. +new + Answer a new semaphore  -File: gst-base.info, Node: ScaledDecimal-comparing, Next: ScaledDecimal-constants, Prev: ScaledDecimal-coercion, Up: ScaledDecimal +File: gst-base.info, Node: RecursionLock-accessing, Next: RecursionLock-mutual exclusion, Prev: RecursionLock class-instance creation, Up: RecursionLock -1.140.4 ScaledDecimal: comparing +1.139.2 RecursionLock: accessing -------------------------------- -< aNumber - Answer whether the receiver is less than arg. - -<= aNumber - Answer whether the receiver is less than or equal to arg. - -= arg - Answer whether the receiver is equal to arg. +isOwnerProcess + Answer whether the receiver is the owner of the lock. -> aNumber - Answer whether the receiver is greater than arg. +name + Answer a user-defined name for the lock. ->= aNumber - Answer whether the receiver is greater than or equal to arg. +name: aString + Set to aString the user-defined name for the lock. -hash - Answer an hash value for the receiver. +waitingProcesses + Answer the set of processes that are waiting on the semaphore. -~= arg - Answer whether the receiver is not equal arg. +wouldBlock + Answer whether sending #wait to the receiver would suspend the + active process.  -File: gst-base.info, Node: ScaledDecimal-constants, Next: ScaledDecimal-printing, Prev: ScaledDecimal-comparing, Up: ScaledDecimal - -1.140.5 ScaledDecimal: constants --------------------------------- +File: gst-base.info, Node: RecursionLock-mutual exclusion, Next: RecursionLock-printing, Prev: RecursionLock-accessing, Up: RecursionLock -one - Answer the receiver's representation of one. +1.139.3 RecursionLock: mutual exclusion +--------------------------------------- -zero - Answer the receiver's representation of zero. +critical: aBlock + Wait for the receiver to be free, execute aBlock and signal the + receiver again. Return the result of evaluating aBlock.  -File: gst-base.info, Node: ScaledDecimal-printing, Next: ScaledDecimal-storing, Prev: ScaledDecimal-constants, Up: ScaledDecimal +File: gst-base.info, Node: RecursionLock-printing, Prev: RecursionLock-mutual exclusion, Up: RecursionLock -1.140.6 ScaledDecimal: printing +1.139.4 RecursionLock: printing ------------------------------- -displayOn: aStream - Print a representation of the receiver on aStream, intended to be - directed to a user. In this particular case, the `scale' part of - the #printString is not emitted. - printOn: aStream - Print a representation of the receiver on aStream. + Print a human-readable represention of the receiver on aStream.  -File: gst-base.info, Node: ScaledDecimal-storing, Prev: ScaledDecimal-printing, Up: ScaledDecimal +File: gst-base.info, Node: Regex, Next: RegexResults, Prev: RecursionLock, Up: Base classes -1.140.7 ScaledDecimal: storing ------------------------------- +1.140 Regex +=========== -isLiteralObject - Answer whether the receiver is expressible as a Smalltalk literal. +Defined in namespace Smalltalk +Superclass: Object +Category: Collections-Text + A Regex is a read-only string for which the regular expression + matcher can cache a compiled representation, thus speeding up + matching. Regex objects are constructed automatically by methods + that expect to match many times the same regular expression, but + can also be constructed explicitly sending #asRegex to a String or + Symbol. -storeLiteralOn: aStream - Store on aStream some Smalltalk code which compiles to the receiver + Creation of Regex objects inside a loop is of course slower than + creating them outside the loop, but special care is taken so that + the same Regex object is used whenever possible (when converting + Strings to Regex, the cache is sought for an equivalent, already + constructed Regex). -storeOn: aStream - Print Smalltalk code that compiles to the receiver on aStream. +* Menu: +* Regex class-instance creation:: (class) +* Regex-basic:: (instance) +* Regex-conversion:: (instance) +* Regex-printing:: (instance)  -File: gst-base.info, Node: SecurityPolicy, Next: Semaphore, Prev: ScaledDecimal, Up: Base classes +File: gst-base.info, Node: Regex class-instance creation, Next: Regex-basic, Up: Regex -1.141 SecurityPolicy -==================== +1.140.1 Regex class: instance creation +-------------------------------------- -Defined in namespace Smalltalk -Superclass: Object -Category: Language-Security - I am the class that represents which operations that could harm - the system's security are allowed or denied to a particular class. - If a class does not have a policy, it is allowed everything if it - is trusted, and denied everything if it is untrusted +fromString: aString + Like `aString asRegex'. -* Menu: +new + Do not send this message. -* SecurityPolicy-modifying:: (instance) -* SecurityPolicy-querying:: (instance)  -File: gst-base.info, Node: SecurityPolicy-modifying, Next: SecurityPolicy-querying, Up: SecurityPolicy - -1.141.1 SecurityPolicy: modifying ---------------------------------- - -addPermission: aPermission - Not commented. +File: gst-base.info, Node: Regex-basic, Next: Regex-conversion, Prev: Regex class-instance creation, Up: Regex -owner: aClass - Not commented. +1.140.2 Regex: basic +-------------------- -removePermission: aPermission - Not commented. +at: anIndex put: anObject + Fail. Regex objects are read-only. -withOwner: aClass - Not commented. +copy + Answer the receiver; instances of Regex are identity objects + because their only purpose is to ease caching, and we obtain + better caching if we avoid copying Regex objects  -File: gst-base.info, Node: SecurityPolicy-querying, Prev: SecurityPolicy-modifying, Up: SecurityPolicy +File: gst-base.info, Node: Regex-conversion, Next: Regex-printing, Prev: Regex-basic, Up: Regex -1.141.2 SecurityPolicy: querying --------------------------------- +1.140.3 Regex: conversion +------------------------- -check: aPermission - Not commented. +asRegex + Answer the receiver, which *is* a Regex! -implies: aPermission - Not commented. +asString + Answer the receiver, converted back to a String + +species + Answer `String'.  -File: gst-base.info, Node: Semaphore, Next: SequenceableCollection, Prev: SecurityPolicy, Up: Base classes +File: gst-base.info, Node: Regex-printing, Prev: Regex-conversion, Up: Regex -1.142 Semaphore -=============== +1.140.4 Regex: printing +----------------------- -Defined in namespace Smalltalk -Superclass: LinkedList -Category: Language-Processes - My instances represent counting semaphores. I provide methods for - signalling the semaphore's availability, and methods for waiting - for its availability. I also provide some methods for - implementing critical sections. +displayOn: aStream + Print a represention of the receiver on aStream. For most objects + this is simply its #printOn: representation, but for strings and + characters, superfluous dollars or extra pairs of quotes are + stripped. -* Menu: +displayString + Answer a String representing the receiver. For most objects this + is simply its #printString, but for strings and characters, + superfluous dollars or extra pair of quotes are stripped. + +printOn: aStream + Print a represention of the receiver on aStream. -* Semaphore class-instance creation:: (class) -* Semaphore-accessing:: (instance) -* Semaphore-builtins:: (instance) -* Semaphore-mutual exclusion:: (instance) -* Semaphore-printing:: (instance)  -File: gst-base.info, Node: Semaphore class-instance creation, Next: Semaphore-accessing, Up: Semaphore +File: gst-base.info, Node: RegexResults, Next: RootNamespace, Prev: Regex, Up: Base classes -1.142.1 Semaphore class: instance creation ------------------------------------------- +1.141 RegexResults +================== -forMutualExclusion - Answer a new semaphore with a signal on it. These semaphores are a - useful shortcut when you use semaphores as critical sections. +Defined in namespace Smalltalk +Superclass: Object +Category: Collections-Text + I hold the results of a regular expression match, and I can + reconstruct which parts of the matched string were assigned to + each subexpression. Methods such as #=~ return RegexResults + objects, while others transform the string directly without + passing the results object back to the caller. -new - Answer a new semaphore +* Menu: +* RegexResults-accessing:: (instance) +* RegexResults-testing:: (instance)  -File: gst-base.info, Node: Semaphore-accessing, Next: Semaphore-builtins, Prev: Semaphore class-instance creation, Up: Semaphore - -1.142.2 Semaphore: accessing ----------------------------- - -name - Answer a user-friendly name for the receiver - -name: aString - Answer a user-friendly name for the receiver +File: gst-base.info, Node: RegexResults-accessing, Next: RegexResults-testing, Up: RegexResults -waitingProcesses - Answer an Array of processes currently waiting on the receiver. +1.141.1 RegexResults: accessing +------------------------------- -wouldBlock - Answer whether waiting on the receiver would suspend the current - process. +asArray + If the regular expression was matched, return an Array with the + subexpressions that were present in the regular expression. +at: anIndex + If the regular expression was matched, return the text of the + anIndex-th subexpression in the successful match. - -File: gst-base.info, Node: Semaphore-builtins, Next: Semaphore-mutual exclusion, Prev: Semaphore-accessing, Up: Semaphore +from + If the regular expression was matched, return the index of the + first character in the successful match. -1.142.3 Semaphore: builtins ---------------------------- +fromAt: anIndex + If the regular expression was matched, return the index of the + first character of the anIndex-th subexpression in the successful + match. -lock - Without putting the receiver to sleep, force processes that try to - wait on the semaphore to block. Answer whether this was the case - even before. +intervalAt: anIndex + If the regular expression was matched, return an Interval for the + range of indices in the anIndex-th subexpression of the successful + match. -notify - Resume one of the processes that were waiting on the semaphore if - there were any. Do not leave a signal on the semaphore if no - process is waiting. +match + If the regular expression was matched, return the text of the + successful match. -notifyAll - Resume all the processes that were waiting on the semaphore if - there were any. Do not leave a signal on the semaphore if no - process is waiting. +matchInterval + If the regular expression was matched, return an Interval for the + range of indices of the successful match. -signal - Signal the receiver, resuming a waiting process' if there is one +size + If the regular expression was matched, return the number of + subexpressions that were present in the regular expression. -wait - Wait for the receiver to be signalled, suspending the executing - process if it is not yet +subject + If the regular expression was matched, return the text that was + matched against it. - are +to + If the regular expression was matched, return the index of the + last character in the successful match. -waitAfterSignalling: aSemaphore - Signal aSemaphore then, atomically, wait for the receiver to be - signalled, suspending the executing process if it is not yet. This - is needed to avoid race conditions when the #notify and #notifyAll - are used before waiting on receiver: otherwise, if a process sends - any of the two between the time aSemaphore is signaled and the time - the process starts waiting on the receiver, the notification is - lost. +toAt: anIndex + If the regular expression was matched, return the index of the last + character of the anIndex-th subexpression in the successful match.  -File: gst-base.info, Node: Semaphore-mutual exclusion, Next: Semaphore-printing, Prev: Semaphore-builtins, Up: Semaphore +File: gst-base.info, Node: RegexResults-testing, Prev: RegexResults-accessing, Up: RegexResults -1.142.4 Semaphore: mutual exclusion ------------------------------------ +1.141.2 RegexResults: testing +----------------------------- -critical: aBlock - Wait for the receiver to be free, execute aBlock and signal the - receiver again. Return the result of evaluating aBlock. +ifMatched: oneArgBlock + If the regular expression was matched, pass the receiver to + oneArgBlock and return its result. Otherwise, return nil. +ifMatched: oneArgBlock ifNotMatched: zeroArgBlock + If the regular expression was matched, evaluate oneArgBlock with + the receiver as the argument. If it was not, evaluate + zeroArgBlock. Answer the result of the block's evaluation. - -File: gst-base.info, Node: Semaphore-printing, Prev: Semaphore-mutual exclusion, Up: Semaphore +ifNotMatched: zeroArgBlock + If the regular expression was matched, return the receiver. If it + was not, evaluate zeroArgBlock and return its result. -1.142.5 Semaphore: printing ---------------------------- +ifNotMatched: zeroArgBlock ifMatched: oneArgBlock + If the regular expression was matched, evaluate oneArgBlock with + the receiver as the argument. If it was not, evaluate + zeroArgBlock. Answer the result of the block's evaluation. -printOn: aStream - Print a human-readable represention of the receiver on aStream. +matched + Answer whether the regular expression was matched  -File: gst-base.info, Node: SequenceableCollection, Next: Set, Prev: Semaphore, Up: Base classes +File: gst-base.info, Node: RootNamespace, Next: RunArray, Prev: RegexResults, Up: Base classes -1.143 SequenceableCollection -============================ +1.142 RootNamespace +=================== Defined in namespace Smalltalk -Superclass: Collection -Category: Collections-Sequenceable - My instances represent collections of objects that are ordered. I - provide some access and manipulation methods. +Superclass: AbstractNamespace +Category: Language-Implementation + I am a special form of dictionary. Classes hold on an instance of + me; it is called their `environment'. * Menu: -* SequenceableCollection class-instance creation:: (class) -* SequenceableCollection-basic:: (instance) -* SequenceableCollection-concatenating:: (instance) -* SequenceableCollection-copying SequenceableCollections:: (instance) -* SequenceableCollection-enumerating:: (instance) -* SequenceableCollection-replacing items:: (instance) -* SequenceableCollection-sorting:: (instance) -* SequenceableCollection-testing:: (instance) +* RootNamespace class-instance creation:: (class) +* RootNamespace-namespace hierarchy:: (instance) +* RootNamespace-overrides for superspaces:: (instance) +* RootNamespace-printing:: (instance)  -File: gst-base.info, Node: SequenceableCollection class-instance creation, Next: SequenceableCollection-basic, Up: SequenceableCollection +File: gst-base.info, Node: RootNamespace class-instance creation, Next: RootNamespace-namespace hierarchy, Up: RootNamespace -1.143.1 SequenceableCollection class: instance creation -------------------------------------------------------- +1.142.1 RootNamespace class: instance creation +---------------------------------------------- -join: aCollection separatedBy: sepCollection - Where aCollection is a collection of SequenceableCollections, - answer a new instance with all the elements therein, in order, - each separated by an occurrence of sepCollection. +new: spaceName + Create a new root namespace with the given name, and add to + Smalltalk a key that references it.  -File: gst-base.info, Node: SequenceableCollection-basic, Next: SequenceableCollection-concatenating, Prev: SequenceableCollection class-instance creation, Up: SequenceableCollection +File: gst-base.info, Node: RootNamespace-namespace hierarchy, Next: RootNamespace-overrides for superspaces, Prev: RootNamespace class-instance creation, Up: RootNamespace -1.143.2 SequenceableCollection: basic -------------------------------------- +1.142.2 RootNamespace: namespace hierarchy +------------------------------------------ -after: oldObject - Return the element after oldObject. Error if oldObject not found - or if no following object is available +siblings + Answer all the other root namespaces -allButFirst - Answer a copy of the receiver without the first object. +siblingsDo: aBlock + Evaluate aBlock once for each of the other root namespaces, + passing the namespace as a parameter. -allButFirst: n - Answer a copy of the receiver without the first n objects. -allButLast - Answer a copy of the receiver without the last object. + +File: gst-base.info, Node: RootNamespace-overrides for superspaces, Next: RootNamespace-printing, Prev: RootNamespace-namespace hierarchy, Up: RootNamespace -allButLast: n - Answer a copy of the receiver without the last n objects. +1.142.3 RootNamespace: overrides for superspaces +------------------------------------------------ -at: anIndex ifAbsent: aBlock - Answer the anIndex-th item of the collection, or evaluate aBlock - and answer the result if the index is out of range +inheritedKeys + Answer a Set of all the keys in the receiver and its superspaces -atAll: keyCollection - Answer a collection of the same kind returned by #collect:, that - only includes the values at the given indices. Fail if any of the - values in keyCollection is out of bounds for the receiver. - -atAll: aCollection put: anObject - Put anObject at every index contained in aCollection - -atAllPut: anObject - Put anObject at every index in the receiver - -atRandom - Return a random item of the receiver. - -before: oldObject - Return the element before oldObject. Error if oldObject not found - or if no preceding object is available +set: key to: newValue ifAbsent: aBlock + Assign newValue to the variable named as specified by `key'. This + method won't define a new variable; instead if the key is not + found it will search in superspaces and evaluate aBlock if it is + not found. Answer newValue. -first - Answer the first item in the receiver -first: n - Answer the first n items in the receiver + +File: gst-base.info, Node: RootNamespace-printing, Prev: RootNamespace-overrides for superspaces, Up: RootNamespace -fourth - Answer the fourth item in the receiver +1.142.4 RootNamespace: printing +------------------------------- -identityIncludes: anObject - Answer whether we include the anObject object +nameIn: aNamespace + Answer Smalltalk code compiling to the receiver when the current + namespace is aNamespace -identityIndexOf: anElement - Answer the index of the first occurrence of an object identical to - anElement in the receiver. Answer 0 if no item is found - -identityIndexOf: anElement ifAbsent: exceptionBlock - Answer the index of the first occurrence of an object identical to - anElement in the receiver. Invoke exceptionBlock and answer its - result if no item is found - -identityIndexOf: anElement startingAt: anIndex - Answer the first index > anIndex which contains an object identical - to anElement. Answer 0 if no item is found - -identityIndexOf: anObject startingAt: anIndex ifAbsent: exceptionBlock - Answer the first index > anIndex which contains an object exactly - identical to anObject. Invoke exceptionBlock and answer its - result if no item is found - -identityIndexOfLast: anElement ifAbsent: exceptionBlock - Answer the last index which contains an object identical to - anElement. Invoke exceptionBlock and answer its result if no item - is found +printOn: aStream in: aNamespace + Print on aStream some Smalltalk code compiling to the receiver + when the current namespace is aNamespace -includes: anObject - Answer whether we include anObject +storeOn: aStream + Store Smalltalk code compiling to the receiver -indexOf: anElement - Answer the index of the first occurrence of anElement in the - receiver. Answer 0 if no item is found - -indexOf: anElement ifAbsent: exceptionBlock - Answer the index of the first occurrence of anElement in the - receiver. Invoke exceptionBlock and answer its result if no item - is found - -indexOf: anElement startingAt: anIndex - Answer the first index > anIndex which contains anElement. Answer - 0 if no item is found - -indexOf: anElement startingAt: anIndex ifAbsent: exceptionBlock - Answer the first index > anIndex which contains anElement. Invoke - exceptionBlock and answer its result if no item is found - -indexOfLast: anElement ifAbsent: exceptionBlock - Answer the last index which contains anElement. Invoke - exceptionBlock and answer its result if no item is found - -indexOfSubCollection: aSubCollection - Answer the first index > anIndex at which starts a sequence of - items matching aSubCollection. Answer 0 if no such sequence is - found. - -indexOfSubCollection: aSubCollection ifAbsent: exceptionBlock - Answer the first index > anIndex at which starts a sequence of - items matching aSubCollection. Answer 0 if no such sequence is - found. - -indexOfSubCollection: aSubCollection startingAt: anIndex - Answer the first index > anIndex at which starts a sequence of - items matching aSubCollection. Answer 0 if no such sequence is - found. - -indexOfSubCollection: aSubCollection startingAt: anIndex ifAbsent: exceptionBlock - Answer the first index > anIndex at which starts a sequence of - items matching aSubCollection. Invoke exceptionBlock and answer - its result if no such sequence is found -last - Answer the last item in the receiver + +File: gst-base.info, Node: RunArray, Next: ScaledDecimal, Prev: RootNamespace, Up: Base classes -last: n - Answer the last n items in the receiver +1.143 RunArray +============== -second - Answer the second item in the receiver +Defined in namespace Smalltalk +Superclass: OrderedCollection +Category: Collections-Sequenceable + My instances are OrderedCollections that automatically apply Run + Length Encoding compression to the things they store. Be careful + when using me: I can provide great space savings, but my instances + don't grant linear access time. RunArray's behavior currently is + similar to that of OrderedCollection (you can add elements to + RunArrays); maybe it should behave like an ArrayedCollection. -third - Answer the third item in the receiver +* Menu: +* RunArray class-instance creation:: (class) +* RunArray-accessing:: (instance) +* RunArray-adding:: (instance) +* RunArray-basic:: (instance) +* RunArray-copying:: (instance) +* RunArray-enumerating:: (instance) +* RunArray-removing:: (instance) +* RunArray-searching:: (instance) +* RunArray-testing:: (instance)  -File: gst-base.info, Node: SequenceableCollection-concatenating, Next: SequenceableCollection-copying SequenceableCollections, Prev: SequenceableCollection-basic, Up: SequenceableCollection - -1.143.3 SequenceableCollection: concatenating ---------------------------------------------- - -join - Answer a new collection like my first element, with all the - elements (in order) of all my elements, which should be - collections. +File: gst-base.info, Node: RunArray class-instance creation, Next: RunArray-accessing, Up: RunArray - I use my first element instead of myself as a prototype because my - elements are more likely to share the desired properties than I - am, such as in: +1.143.1 RunArray class: instance creation +----------------------------------------- - #('hello, ' 'world') join => 'hello, world' +new + Answer an empty RunArray -join: sepCollection - Answer a new collection like my first element, with all the - elements (in order) of all my elements (which should be - collections) separated by sepCollection. +new: aSize + Answer a RunArray with space for aSize runs - I use my first element instead of myself as a prototype because my - elements are more likely to share the desired properties than I - am, such as in: - #('hello,' 'world') join: ' ' => 'hello, world' + +File: gst-base.info, Node: RunArray-accessing, Next: RunArray-adding, Prev: RunArray class-instance creation, Up: RunArray -with: aSequenceableCollection - Return an Array with the same size as the receiver and - aSequenceableCollection, each element of which is a 2-element - Arrays including one element from the receiver and one from - aSequenceableCollection. +1.143.2 RunArray: accessing +--------------------------- -with: seqColl1 with: seqColl2 - Return an Array with the same size as the receiver and the - arguments, each element of which is a 3-element Arrays including - one element from the receiver and one from each argument. +at: anIndex + Answer the element at index anIndex -with: seqColl1 with: seqColl2 with: seqColl3 - Return an Array with the same size as the receiver and the - arguments, each element of which is a 4-element Arrays including - one element from the receiver and one from each argument. +at: anIndex put: anObject + Replace the element at index anIndex with anObject and answer + anObject  -File: gst-base.info, Node: SequenceableCollection-copying SequenceableCollections, Next: SequenceableCollection-enumerating, Prev: SequenceableCollection-concatenating, Up: SequenceableCollection +File: gst-base.info, Node: RunArray-adding, Next: RunArray-basic, Prev: RunArray-accessing, Up: RunArray -1.143.4 SequenceableCollection: copying SequenceableCollections ---------------------------------------------------------------- +1.143.3 RunArray: adding +------------------------ -, aSequenceableCollection - Append aSequenceableCollection at the end of the receiver (using - #add:), and answer a new collection +add: anObject afterIndex: anIndex + Add anObject after the element at index anIndex -copyAfter: anObject - Answer a new collection holding all the elements of the receiver - after the first occurrence of anObject, up to the last. +addAll: aCollection afterIndex: anIndex + Add all the elements of aCollection after the one at index + anIndex. If aCollection is unordered, its elements could be added + in an order which is not the #do: order -copyAfterLast: anObject - Answer a new collection holding all the elements of the receiver - after the last occurrence of anObject, up to the last. +addAllFirst: aCollection + Add all the elements of aCollection at the beginning of the + receiver. If aCollection is unordered, its elements could be added + in an order which is not the #do: order -copyFrom: start - Answer a new collection containing all the items in the receiver - from the start-th. +addAllLast: aCollection + Add all the elements of aCollection at the end of the receiver. If + aCol- lection is unordered, its elements could be added in an + order which is not the #do: order -copyFrom: start to: stop - Answer a new collection containing all the items in the receiver - from the start-th and to the stop-th +addFirst: anObject + Add anObject at the beginning of the receiver. Watch out: this + operation can cause serious performance pitfalls -copyReplaceAll: oldSubCollection with: newSubCollection - Answer a new collection in which all the sequences matching - oldSubCollection are replaced with newSubCollection +addLast: anObject + Add anObject at the end of the receiver -copyReplaceFrom: start to: stop with: replacementCollection - Answer a new collection of the same class as the receiver that - contains the same elements as the receiver, in the same order, - except for elements from index `start' to index `stop'. - If start < stop, these are replaced by the contents of the - replacementCollection. Instead, If start = (stop + 1), like in - `copyReplaceFrom: 4 to: 3 with: anArray', then every element of - the receiver will be present in the answered copy; the operation - will be an append if stop is equal to the size of the receiver or, - if it is not, an insert before index `start'. + +File: gst-base.info, Node: RunArray-basic, Next: RunArray-copying, Prev: RunArray-adding, Up: RunArray -copyReplaceFrom: start to: stop withObject: anObject - Answer a new collection of the same class as the receiver that - contains the same elements as the receiver, in the same order, - except for elements from index `start' to index `stop'. +1.143.4 RunArray: basic +----------------------- - If start < stop, these are replaced by stop-start+1 copies of - anObject. Instead, If start = (stop + 1), then every element of - the receiver will be present in the answered copy; the operation - will be an append if stop is equal to the size of the receiver or, - if it is not, an insert before index `start'. +first + Answer the first element in the receiver -copyUpTo: anObject - Answer a new collection holding all the elements of the receiver - from the first up to the first occurrence of anObject, excluded. +last + Answer the last element of the receiver -copyUpToLast: anObject - Answer a new collection holding all the elements of the receiver - from the first up to the last occurrence of anObject, excluded. +size + Answer the number of elements in the receiver  -File: gst-base.info, Node: SequenceableCollection-enumerating, Next: SequenceableCollection-replacing items, Prev: SequenceableCollection-copying SequenceableCollections, Up: SequenceableCollection +File: gst-base.info, Node: RunArray-copying, Next: RunArray-enumerating, Prev: RunArray-basic, Up: RunArray -1.143.5 SequenceableCollection: enumerating -------------------------------------------- +1.143.5 RunArray: copying +------------------------- -anyOne - Answer an unspecified element of the collection. +deepCopy + Answer a copy of the receiver containing copies of the receiver's + elements (#copy is used to obtain them) -do: aBlock - Evaluate aBlock for all the elements in the sequenceable collection +shallowCopy + Answer a copy of the receiver. The elements are not copied -do: aBlock separatedBy: sepBlock - Evaluate aBlock for all the elements in the sequenceable - collection. Between each element, evaluate sepBlock without - parameters. - -doWithIndex: aBlock - Evaluate aBlock for all the elements in the sequenceable - collection, passing the index of each element as the second - parameter. This method is mantained for backwards compatibility - and is not mandated by the ANSI standard; use #keysAndValuesDo: - -findFirst: aBlock - Returns the index of the first element of the sequenceable - collection for which aBlock returns true, or 0 if none - -findLast: aBlock - Returns the index of the last element of the sequenceable - collection for which aBlock returns true, or 0 if none does -fold: binaryBlock - First, pass to binaryBlock the first and second elements of the - receiver; for each subsequent element, pass the result of the - previous evaluation and an element. Answer the result of the last - invocation, or the first element if the collection has size 1. - Fail if the collection is empty. + +File: gst-base.info, Node: RunArray-enumerating, Next: RunArray-removing, Prev: RunArray-copying, Up: RunArray -from: startIndex to: stopIndex do: aBlock - Evaluate aBlock for all the elements in the sequenceable - collection whose indices are in the range index to stopIndex - -from: startIndex to: stopIndex doWithIndex: aBlock - Evaluate aBlock for all the elements in the sequenceable - collection whose indices are in the range index to stopIndex, - passing the index of each element as the second parameter. This - method is mantained for backwards compatibility and is not - mandated by the ANSI standard; use #from:to:keysAndValuesDo: - -from: startIndex to: stopIndex keysAndValuesDo: aBlock - Evaluate aBlock for all the elements in the sequenceable - collection whose indices are in the range index to stopIndex, - passing the index of each element as the first parameter and the - element as the second. +1.143.6 RunArray: enumerating +----------------------------- -keys - Return an Interval corresponding to the valid indices in the - receiver. +do: aBlock + Enumerate all the objects in the receiver, passing each one to + aBlock -keysAndValuesDo: aBlock - Evaluate aBlock for all the elements in the sequenceable - collection, passing the index of each element as the first - parameter and the element as the second. +objectsAndRunLengthsDo: aBlock + Enumerate all the runs in the receiver, passing to aBlock two + parameters for every run: the first is the repeated object, the + second is the number of copies -readStream - Answer a ReadStream streaming on the receiver -readWriteStream - Answer a ReadWriteStream which streams on the receiver + +File: gst-base.info, Node: RunArray-removing, Next: RunArray-searching, Prev: RunArray-enumerating, Up: RunArray -reverse - Answer the receivers' contents in reverse order +1.143.7 RunArray: removing +-------------------------- -reverseDo: aBlock - Evaluate aBlock for all elements in the sequenceable collection, - from the last to the first. +removeAtIndex: anIndex + Remove the object at index anIndex from the receiver and answer the + removed object -with: aSequenceableCollection collect: aBlock - Evaluate aBlock for each pair of elements took respectively from - the re- ceiver and from aSequenceableCollection; answer a - collection of the same kind of the receiver, made with the block's - return values. Fail if the receiver has not the same size as - aSequenceableCollection. +removeFirst + Remove the first object from the receiver and answer the removed + object -with: aSequenceableCollection do: aBlock - Evaluate aBlock for each pair of elements took respectively from - the re- ceiver and from aSequenceableCollection. Fail if the - receiver has not the same size as aSequenceableCollection. +removeLast + Remove the last object from the receiver and answer the removed + object  -File: gst-base.info, Node: SequenceableCollection-replacing items, Next: SequenceableCollection-sorting, Prev: SequenceableCollection-enumerating, Up: SequenceableCollection - -1.143.6 SequenceableCollection: replacing items ------------------------------------------------ - -replaceAll: anObject with: anotherObject - In the receiver, replace every occurrence of anObject with - anotherObject. - -replaceFrom: start to: stop with: replacementCollection - Replace the items from start to stop with replacementCollection's - items from 1 to stop-start+1 (in unexpected order if the - collection is not sequenceable). +File: gst-base.info, Node: RunArray-searching, Next: RunArray-testing, Prev: RunArray-removing, Up: RunArray -replaceFrom: start to: stop with: replacementCollection startingAt: repStart - Replace the items from start to stop with replacementCollection's - items from repStart to repStart+stop-start +1.143.8 RunArray: searching +--------------------------- -replaceFrom: anIndex to: stopIndex withObject: replacementObject - Replace every item from start to stop with replacementObject. +indexOf: anObject startingAt: anIndex ifAbsent: aBlock + Answer the index of the first copy of anObject in the receiver, + starting the search at the element at index anIndex. If no equal + object is found, answer the result of evaluating aBlock  -File: gst-base.info, Node: SequenceableCollection-sorting, Next: SequenceableCollection-testing, Prev: SequenceableCollection-replacing items, Up: SequenceableCollection +File: gst-base.info, Node: RunArray-testing, Prev: RunArray-searching, Up: RunArray -1.143.7 SequenceableCollection: sorting ---------------------------------------- +1.143.9 RunArray: testing +------------------------- -sort - Sort the contents of the receiver according to the default sort - block, which uses #<= to compare items. += anObject + Answer true if the receiver is equal to anObject -sortBy: sortBlock - Sort the contents of the receiver according to the given sort - block, which accepts pair of items and returns true if the first - item is less than the second one. +hash + Answer an hash value for the receiver  -File: gst-base.info, Node: SequenceableCollection-testing, Prev: SequenceableCollection-sorting, Up: SequenceableCollection - -1.143.8 SequenceableCollection: testing ---------------------------------------- - -= aCollection - Answer whether the receiver's items match those in aCollection +File: gst-base.info, Node: ScaledDecimal, Next: SecurityPolicy, Prev: RunArray, Up: Base classes -hash - Answer an hash value for the receiver +1.144 ScaledDecimal +=================== -inspect - Print all the instance variables and context of the receiver on the - Transcript +Defined in namespace Smalltalk +Superclass: Number +Category: Language-Data types + ScaledDecimal provides a numeric representation of fixed point + decimal numbers able to accurately represent decimal fractions. + It supports unbounded precision, with no limit to the number of + digits before and after the decimal point. -isSequenceable - Answer whether the receiver can be accessed by a numeric index with - #at:/#at:put:. +* Menu: +* ScaledDecimal class-instance creation:: (class) +* ScaledDecimal-arithmetic:: (instance) +* ScaledDecimal-coercion:: (instance) +* ScaledDecimal-comparing:: (instance) +* ScaledDecimal-constants:: (instance) +* ScaledDecimal-printing:: (instance) +* ScaledDecimal-storing:: (instance)  -File: gst-base.info, Node: Set, Next: SharedQueue, Prev: SequenceableCollection, Up: Base classes - -1.144 Set -========= +File: gst-base.info, Node: ScaledDecimal class-instance creation, Next: ScaledDecimal-arithmetic, Up: ScaledDecimal -Defined in namespace Smalltalk -Superclass: HashedCollection -Category: Collections-Unordered - I am the typical set object; I also known how to do arithmetic on - my instances. +1.144.1 ScaledDecimal class: instance creation +---------------------------------------------- -* Menu: +newFromNumber: aNumber scale: scale + Answer a new instance of ScaledDecimal, representing a decimal + fraction with a decimal representation considered valid up to the + scale-th digit. -* Set-arithmetic:: (instance) -* Set-awful ST-80 compatibility hacks:: (instance) -* Set-comparing:: (instance)  -File: gst-base.info, Node: Set-arithmetic, Next: Set-awful ST-80 compatibility hacks, Up: Set - -1.144.1 Set: arithmetic ------------------------ +File: gst-base.info, Node: ScaledDecimal-arithmetic, Next: ScaledDecimal-coercion, Prev: ScaledDecimal class-instance creation, Up: ScaledDecimal -& aSet - Compute the set intersection of the receiver and aSet. +1.144.2 ScaledDecimal: arithmetic +--------------------------------- -+ aSet - Compute the set union of the receiver and aSet. +* aNumber + Multiply two numbers and answer the result. -- aSet - Compute the set difference of the receiver and aSet. ++ aNumber + Sum two numbers and answer the result. +- aNumber + Subtract aNumber from the receiver and answer the result. - -File: gst-base.info, Node: Set-awful ST-80 compatibility hacks, Next: Set-comparing, Prev: Set-arithmetic, Up: Set +/ aNumber + Divide two numbers and answer the result. -1.144.2 Set: awful ST-80 compatibility hacks --------------------------------------------- +// aNumber + Answer the integer quotient after dividing the receiver by aNumber + with truncation towards negative infinity. -findObjectIndex: object - Tries to see if anObject exists as an indexed variable. As soon as - nil or anObject is found, the index of that slot is answered +\\ aNumber + Answer the remainder after integer division the receiver by aNumber + with truncation towards negative infinity.  -File: gst-base.info, Node: Set-comparing, Prev: Set-awful ST-80 compatibility hacks, Up: Set +File: gst-base.info, Node: ScaledDecimal-coercion, Next: ScaledDecimal-comparing, Prev: ScaledDecimal-arithmetic, Up: ScaledDecimal -1.144.3 Set: comparing ----------------------- +1.144.3 ScaledDecimal: coercion +------------------------------- -< aSet - Answer whether the receiver is a strict subset of aSet +asCNumber + Convert the receiver to a kind of number that is understood by the + C call-out mechanism. -<= aSet - Answer whether the receiver is a subset of aSet +asFloatD + Answer the receiver, converted to a FloatD -> aSet - Answer whether the receiver is a strict superset of aSet +asFloatE + Answer the receiver, converted to a FloatE ->= aSet - Answer whether the receiver is a superset of aSet +asFloatQ + Answer the receiver, converted to a FloatQ +asFraction + Answer the receiver, converted to a Fraction - -File: gst-base.info, Node: SharedQueue, Next: Signal, Prev: Set, Up: Base classes +ceiling + Answer the receiver, converted to an Integer and truncated towards + +infinity. -1.145 SharedQueue -================= +coerce: aNumber + Answer aNumber, converted to a ScaledDecimal with the same scale + as the receiver. -Defined in namespace Smalltalk -Superclass: Object -Category: Language-Processes - My instances provide a guaranteed safe mechanism to allow for - communication between processes. All access to the underlying - data structures is controlled with critical sections so that - things proceed smoothly. +fractionPart + Answer the fractional part of the receiver. -* Menu: +generality + Return the receiver's generality -* SharedQueue class-instance creation:: (class) -* SharedQueue-accessing:: (instance) +integerPart + Answer the fractional part of the receiver. - -File: gst-base.info, Node: SharedQueue class-instance creation, Next: SharedQueue-accessing, Up: SharedQueue +truncated + Answer the receiver, converted to an Integer and truncated towards + -infinity. -1.145.1 SharedQueue class: instance creation --------------------------------------------- -new - Create a new instance of the receiver + +File: gst-base.info, Node: ScaledDecimal-comparing, Next: ScaledDecimal-constants, Prev: ScaledDecimal-coercion, Up: ScaledDecimal -sortBlock: sortBlock - Create a new instance of the receiver which implements a priority - queue with the given sort block +1.144.4 ScaledDecimal: comparing +-------------------------------- +< aNumber + Answer whether the receiver is less than arg. - -File: gst-base.info, Node: SharedQueue-accessing, Prev: SharedQueue class-instance creation, Up: SharedQueue +<= aNumber + Answer whether the receiver is less than or equal to arg. -1.145.2 SharedQueue: accessing ------------------------------- += arg + Answer whether the receiver is equal to arg. -isEmpty - Answer whether there is an object on the queue +> aNumber + Answer whether the receiver is greater than arg. -next - Wait for an object to be on the queue, then remove it and answer it +>= aNumber + Answer whether the receiver is greater than or equal to arg. -nextPut: value - Put value on the queue and answer it +hash + Answer an hash value for the receiver. -peek - Wait for an object to be on the queue if necessary, then answer the - same object that #next would answer without removing it. +~= arg + Answer whether the receiver is not equal arg.  -File: gst-base.info, Node: Signal, Next: SingletonProxy, Prev: SharedQueue, Up: Base classes +File: gst-base.info, Node: ScaledDecimal-constants, Next: ScaledDecimal-printing, Prev: ScaledDecimal-comparing, Up: ScaledDecimal -1.146 Signal -============ +1.144.5 ScaledDecimal: constants +-------------------------------- -Defined in namespace Smalltalk -Superclass: Object -Category: Language-Exceptions - My instances describe an exception that has happened, and are - passed to exception handlers. Apart from containing information on - the generated exception and its arguments, they contain methods - that allow you to resume execution, leave the #on:do:... snippet, - and pass the exception to an handler with a lower priority. +one + Answer the receiver's representation of one. -* Menu: +zero + Answer the receiver's representation of zero. -* Signal-accessing:: (instance) -* Signal-copying:: (instance) -* Signal-exception handling:: (instance)  -File: gst-base.info, Node: Signal-accessing, Next: Signal-copying, Up: Signal - -1.146.1 Signal: accessing -------------------------- - -argument - Answer the first argument of the receiver +File: gst-base.info, Node: ScaledDecimal-printing, Next: ScaledDecimal-storing, Prev: ScaledDecimal-constants, Up: ScaledDecimal -argumentCount - Answer how many arguments the receiver has +1.144.6 ScaledDecimal: printing +------------------------------- -arguments - Answer the arguments of the receiver +displayOn: aStream + Print a representation of the receiver on aStream, intended to be + directed to a user. In this particular case, the `scale' part of + the #printString is not emitted. -basicMessageText - Answer an exception's message text. Do not override this method. +printOn: aStream + Print a representation of the receiver on aStream. -description - Answer the description of the raised exception -exception - Answer the CoreException that was raised + +File: gst-base.info, Node: ScaledDecimal-storing, Prev: ScaledDecimal-printing, Up: ScaledDecimal -messageText - Answer an exception's message text. +1.144.7 ScaledDecimal: storing +------------------------------ -messageText: aString - Set an exception's message text. +isLiteralObject + Answer whether the receiver is expressible as a Smalltalk literal. -tag - Answer an exception's tag value. If not specified, it is the same - as the message text. +storeLiteralOn: aStream + Store on aStream some Smalltalk code which compiles to the receiver -tag: anObject - Set an exception's tag value. If nil, the tag value will be the - same as the message text. +storeOn: aStream + Print Smalltalk code that compiles to the receiver on aStream.  -File: gst-base.info, Node: Signal-copying, Next: Signal-exception handling, Prev: Signal-accessing, Up: Signal - -1.146.2 Signal: copying ------------------------ +File: gst-base.info, Node: SecurityPolicy, Next: Semaphore, Prev: ScaledDecimal, Up: Base classes -postCopy - Modify the receiver so that it does not refer to any instantiated - exception handler. +1.145 SecurityPolicy +==================== +Defined in namespace Smalltalk +Superclass: Object +Category: Language-Security + I am the class that represents which operations that could harm + the system's security are allowed or denied to a particular class. + If a class does not have a policy, it is allowed everything if it + is trusted, and denied everything if it is untrusted - -File: gst-base.info, Node: Signal-exception handling, Prev: Signal-copying, Up: Signal +* Menu: -1.146.3 Signal: exception handling ----------------------------------- +* SecurityPolicy-modifying:: (instance) +* SecurityPolicy-querying:: (instance) -context - Return the execution context for the #on:do: snippet + +File: gst-base.info, Node: SecurityPolicy-modifying, Next: SecurityPolicy-querying, Up: SecurityPolicy -defaultAction - Execute the default handler for the raised exception +1.145.1 SecurityPolicy: modifying +--------------------------------- -isNested - Answer whether the current exception handler is within the scope of - another handler for the same exception. +addPermission: aPermission + Not commented. -isResumable - Answer whether the exception that instantiated the receiver is - resumable. +owner: aClass + Not commented. -outer - Raise the exception that instantiated the receiver, passing the - same parameters. If the receiver is resumable and the evaluated - exception action resumes then the result returned from #outer will - be the resumption value of the evaluated exception action. If the - receiver is not resumable or if the exception action does not - resume then this message will not return, and #outer will be - equivalent to #pass. - -pass - Yield control to the enclosing exception action for the receiver. - Similar to #outer, but control does not return to the currently - active exception handler. - -resignalAs: replacementException - Reinstate all handlers and execute the handler for - `replacementException'; control does not return to the currently - active exception handler. The new Signal object that is created - has the same arguments as the receiver (this might or not be - correct - if it isn't you can use an idiom such as `sig - retryUsing: [ replacementException signal ]) +removePermission: aPermission + Not commented. -resume - If the exception is resumable, resume the execution of the block - that raised the exception; the method that was used to signal the - exception will answer the receiver. Use this method IF AND ONLY - IF you know who caused the exception and if it is possible to - resume it in that particular case +withOwner: aClass + Not commented. -resume: anObject - If the exception is resumable, resume the execution of the block - that raised the exception; the method that was used to signal the - exception will answer anObject. Use this method IF AND ONLY IF - you know who caused the exception and if it is possible to resume - it in that particular case -retry - Re-execute the receiver of the #on:do: message. All handlers are - reinstated: watch out, this can easily cause an infinite loop. + +File: gst-base.info, Node: SecurityPolicy-querying, Prev: SecurityPolicy-modifying, Up: SecurityPolicy -retryUsing: aBlock - Execute aBlock reinstating all handlers, and return its result from - the #signal method. +1.145.2 SecurityPolicy: querying +-------------------------------- -return - Exit the #on:do: snippet, answering nil to its caller. +check: aPermission + Not commented. -return: anObject - Exit the #on:do: snippet, answering anObject to its caller. +implies: aPermission + Not commented.  -File: gst-base.info, Node: SingletonProxy, Next: SmallInteger, Prev: Signal, Up: Base classes +File: gst-base.info, Node: Semaphore, Next: SequenceableCollection, Prev: SecurityPolicy, Up: Base classes -1.147 SingletonProxy -==================== +1.146 Semaphore +=============== Defined in namespace Smalltalk -Superclass: AlternativeObjectProxy -Category: Streams-Files - I am a proxy that stores the class of an object rather than the - object itself, and pretends that a registered instance (which most - likely is a singleton instance of the stored class) was stored - instead. +Superclass: LinkedList +Category: Language-Processes + My instances represent counting semaphores. I provide methods for + signalling the semaphore's availability, and methods for waiting + for its availability. I also provide some methods for + implementing critical sections. * Menu: -* SingletonProxy class-accessing:: (class) -* SingletonProxy class-instance creation:: (class) -* SingletonProxy-saving and restoring:: (instance) +* Semaphore class-instance creation:: (class) +* Semaphore-accessing:: (instance) +* Semaphore-builtins:: (instance) +* Semaphore-mutual exclusion:: (instance) +* Semaphore-printing:: (instance)  -File: gst-base.info, Node: SingletonProxy class-accessing, Next: SingletonProxy class-instance creation, Up: SingletonProxy - -1.147.1 SingletonProxy class: accessing ---------------------------------------- - -acceptUsageForClass: aClass - The receiver was asked to be used as a proxy for the class aClass. - The registration is fine if the class is actually a singleton. - +File: gst-base.info, Node: Semaphore class-instance creation, Next: Semaphore-accessing, Up: Semaphore - -File: gst-base.info, Node: SingletonProxy class-instance creation, Next: SingletonProxy-saving and restoring, Prev: SingletonProxy class-accessing, Up: SingletonProxy +1.146.1 Semaphore class: instance creation +------------------------------------------ -1.147.2 SingletonProxy class: instance creation ------------------------------------------------ +forMutualExclusion + Answer a new semaphore with a signal on it. These semaphores are a + useful shortcut when you use semaphores as critical sections. -on: anObject - Answer a proxy to be used to save anObject. The proxy stores the - class and restores the object by looking into a dictionary of - class -> singleton objects. +new + Answer a new semaphore  -File: gst-base.info, Node: SingletonProxy-saving and restoring, Prev: SingletonProxy class-instance creation, Up: SingletonProxy - -1.147.3 SingletonProxy: saving and restoring --------------------------------------------- - -object - Reconstruct the object stored in the proxy and answer it; the - binaryRepresentationObject is sent the #reconstructOriginalObject - message, and the resulting object is sent the #postLoad message. +File: gst-base.info, Node: Semaphore-accessing, Next: Semaphore-builtins, Prev: Semaphore class-instance creation, Up: Semaphore +1.146.2 Semaphore: accessing +---------------------------- - -File: gst-base.info, Node: SmallInteger, Next: SortedCollection, Prev: SingletonProxy, Up: Base classes +name + Answer a user-friendly name for the receiver -1.148 SmallInteger -================== +name: aString + Answer a user-friendly name for the receiver -Defined in namespace Smalltalk -Superclass: Integer -Category: Language-Data types - I am the integer class of the GNU Smalltalk system. My instances - can represent signed 30 bit integers and are as efficient as - possible. +waitingProcesses + Answer an Array of processes currently waiting on the receiver. -* Menu: +wouldBlock + Answer whether waiting on the receiver would suspend the current + process. -* SmallInteger class-getting limits:: (class) -* SmallInteger class-testing:: (class) -* SmallInteger-bit arithmetic:: (instance) -* SmallInteger-built ins:: (instance) -* SmallInteger-builtins:: (instance) -* SmallInteger-coercion:: (instance) -* SmallInteger-coercion methods:: (instance) -* SmallInteger-testing functionality:: (instance)  -File: gst-base.info, Node: SmallInteger class-getting limits, Next: SmallInteger class-testing, Up: SmallInteger +File: gst-base.info, Node: Semaphore-builtins, Next: Semaphore-mutual exclusion, Prev: Semaphore-accessing, Up: Semaphore -1.148.1 SmallInteger class: getting limits ------------------------------------------- +1.146.3 Semaphore: builtins +--------------------------- -bits - Answer the number of bits (excluding the sign) that can be - represented directly in an object pointer +lock + Without putting the receiver to sleep, force processes that try to + wait on the semaphore to block. Answer whether this was the case + even before. -largest - Answer the largest integer represented directly in an object - pointer +notify + Resume one of the processes that were waiting on the semaphore if + there were any. Do not leave a signal on the semaphore if no + process is waiting. -smallest - Answer the smallest integer represented directly in an object - pointer +notifyAll + Resume all the processes that were waiting on the semaphore if + there were any. Do not leave a signal on the semaphore if no + process is waiting. +signal + Signal the receiver, resuming a waiting process' if there is one - -File: gst-base.info, Node: SmallInteger class-testing, Next: SmallInteger-bit arithmetic, Prev: SmallInteger class-getting limits, Up: SmallInteger +wait + Wait for the receiver to be signalled, suspending the executing + process if it is not yet -1.148.2 SmallInteger class: testing ------------------------------------ + are -isIdentity - Answer whether x = y implies x == y for instances of the receiver +waitAfterSignalling: aSemaphore + Signal aSemaphore then, atomically, wait for the receiver to be + signalled, suspending the executing process if it is not yet. This + is needed to avoid race conditions when the #notify and #notifyAll + are used before waiting on receiver: otherwise, if a process sends + any of the two between the time aSemaphore is signaled and the time + the process starts waiting on the receiver, the notification is + lost.  -File: gst-base.info, Node: SmallInteger-bit arithmetic, Next: SmallInteger-built ins, Prev: SmallInteger class-testing, Up: SmallInteger - -1.148.3 SmallInteger: bit arithmetic ------------------------------------- +File: gst-base.info, Node: Semaphore-mutual exclusion, Next: Semaphore-printing, Prev: Semaphore-builtins, Up: Semaphore -highBit - Return the index of the highest order 1 bit of the receiver +1.146.4 Semaphore: mutual exclusion +----------------------------------- -lowBit - Return the index of the lowest order 1 bit of the receiver. +critical: aBlock + Wait for the receiver to be free, execute aBlock and signal the + receiver again. Return the result of evaluating aBlock. diff -rNu smalltalk-3.0.3/doc/gst-base.info-3 smalltalk-3.0.4/doc/gst-base.info-3 --- smalltalk-3.0.3/doc/gst-base.info-3 2008-05-14 12:35:05.000000000 +0200 +++ smalltalk-3.0.4/doc/gst-base.info-3 2008-08-09 15:31:03.000000000 +0200 @@ -14,9 +14,843 @@ in the section entitled "GNU Free Documentation License".  +File: gst-base.info, Node: Semaphore-printing, Prev: Semaphore-mutual exclusion, Up: Semaphore + +1.146.5 Semaphore: printing +--------------------------- + +printOn: aStream + Print a human-readable represention of the receiver on aStream. + + + +File: gst-base.info, Node: SequenceableCollection, Next: Set, Prev: Semaphore, Up: Base classes + +1.147 SequenceableCollection +============================ + +Defined in namespace Smalltalk +Superclass: Collection +Category: Collections-Sequenceable + My instances represent collections of objects that are ordered. I + provide some access and manipulation methods. + +* Menu: + +* SequenceableCollection class-instance creation:: (class) +* SequenceableCollection-basic:: (instance) +* SequenceableCollection-comparing:: (instance) +* SequenceableCollection-concatenating:: (instance) +* SequenceableCollection-copying SequenceableCollections:: (instance) +* SequenceableCollection-enumerating:: (instance) +* SequenceableCollection-replacing items:: (instance) +* SequenceableCollection-sorting:: (instance) +* SequenceableCollection-still unclassified:: (instance) +* SequenceableCollection-testing:: (instance) + + +File: gst-base.info, Node: SequenceableCollection class-instance creation, Next: SequenceableCollection-basic, Up: SequenceableCollection + +1.147.1 SequenceableCollection class: instance creation +------------------------------------------------------- + +join: aCollection separatedBy: sepCollection + Where aCollection is a collection of SequenceableCollections, + answer a new instance with all the elements therein, in order, + each separated by an occurrence of sepCollection. + + + +File: gst-base.info, Node: SequenceableCollection-basic, Next: SequenceableCollection-comparing, Prev: SequenceableCollection class-instance creation, Up: SequenceableCollection + +1.147.2 SequenceableCollection: basic +------------------------------------- + +after: oldObject + Return the element after oldObject. Error if oldObject not found + or if no following object is available + +allButFirst + Answer a copy of the receiver without the first object. + +allButFirst: n + Answer a copy of the receiver without the first n objects. + +allButLast + Answer a copy of the receiver without the last object. + +allButLast: n + Answer a copy of the receiver without the last n objects. + +at: anIndex ifAbsent: aBlock + Answer the anIndex-th item of the collection, or evaluate aBlock + and answer the result if the index is out of range + +atAll: keyCollection + Answer a collection of the same kind returned by #collect:, that + only includes the values at the given indices. Fail if any of the + values in keyCollection is out of bounds for the receiver. + +atAll: aCollection put: anObject + Put anObject at every index contained in aCollection + +atAllPut: anObject + Put anObject at every index in the receiver + +atRandom + Return a random item of the receiver. + +before: oldObject + Return the element before oldObject. Error if oldObject not found + or if no preceding object is available + +first + Answer the first item in the receiver + +first: n + Answer the first n items in the receiver + +fourth + Answer the fourth item in the receiver + +identityIncludes: anObject + Answer whether we include the anObject object + +identityIndexOf: anElement + Answer the index of the first occurrence of an object identical to + anElement in the receiver. Answer 0 if no item is found + +identityIndexOf: anElement ifAbsent: exceptionBlock + Answer the index of the first occurrence of an object identical to + anElement in the receiver. Invoke exceptionBlock and answer its + result if no item is found + +identityIndexOf: anElement startingAt: anIndex + Answer the first index > anIndex which contains an object identical + to anElement. Answer 0 if no item is found + +identityIndexOf: anObject startingAt: anIndex ifAbsent: exceptionBlock + Answer the first index > anIndex which contains an object exactly + identical to anObject. Invoke exceptionBlock and answer its + result if no item is found + +identityIndexOfLast: anElement ifAbsent: exceptionBlock + Answer the last index which contains an object identical to + anElement. Invoke exceptionBlock and answer its result if no item + is found + +includes: anObject + Answer whether we include anObject + +indexOf: anElement + Answer the index of the first occurrence of anElement in the + receiver. Answer 0 if no item is found + +indexOf: anElement ifAbsent: exceptionBlock + Answer the index of the first occurrence of anElement in the + receiver. Invoke exceptionBlock and answer its result if no item + is found + +indexOf: anElement startingAt: anIndex + Answer the first index > anIndex which contains anElement. Answer + 0 if no item is found + +indexOf: anElement startingAt: anIndex ifAbsent: exceptionBlock + Answer the first index > anIndex which contains anElement. Invoke + exceptionBlock and answer its result if no item is found + +indexOfLast: anElement ifAbsent: exceptionBlock + Answer the last index which contains anElement. Invoke + exceptionBlock and answer its result if no item is found + +indexOfSubCollection: aSubCollection + Answer the first index > anIndex at which starts a sequence of + items matching aSubCollection. Answer 0 if no such sequence is + found. + +indexOfSubCollection: aSubCollection ifAbsent: exceptionBlock + Answer the first index > anIndex at which starts a sequence of + items matching aSubCollection. Answer 0 if no such sequence is + found. + +indexOfSubCollection: aSubCollection startingAt: anIndex + Answer the first index > anIndex at which starts a sequence of + items matching aSubCollection. Answer 0 if no such sequence is + found. + +indexOfSubCollection: aSubCollection startingAt: anIndex ifAbsent: exceptionBlock + Answer the first index > anIndex at which starts a sequence of + items matching aSubCollection. Invoke exceptionBlock and answer + its result if no such sequence is found + +last + Answer the last item in the receiver + +last: n + Answer the last n items in the receiver + +second + Answer the second item in the receiver + +third + Answer the third item in the receiver + + + +File: gst-base.info, Node: SequenceableCollection-comparing, Next: SequenceableCollection-concatenating, Prev: SequenceableCollection-basic, Up: SequenceableCollection + +1.147.3 SequenceableCollection: comparing +----------------------------------------- + +endsWith: aSequenceableCollection + Returns true if the receiver ends with the same characters as + aSequenceableCollection. + +startsWith: aSequenceableCollection + Returns true if the receiver starts with the same characters as + aSequenceableCollection. + + + +File: gst-base.info, Node: SequenceableCollection-concatenating, Next: SequenceableCollection-copying SequenceableCollections, Prev: SequenceableCollection-comparing, Up: SequenceableCollection + +1.147.4 SequenceableCollection: concatenating +--------------------------------------------- + +join: sepCollection + Answer a new collection like my first element, with all the + elements (in order) of all my elements (which should be + collections) separated by sepCollection. + + I use my first element instead of myself as a prototype because my + elements are more likely to share the desired properties than I + am, such as in: + + #('hello,' 'world') join: ' ' => 'hello, world' + +with: aSequenceableCollection + Return an Array with the same size as the receiver and + aSequenceableCollection, each element of which is a 2-element + Arrays including one element from the receiver and one from + aSequenceableCollection. + +with: seqColl1 with: seqColl2 + Return an Array with the same size as the receiver and the + arguments, each element of which is a 3-element Arrays including + one element from the receiver and one from each argument. + +with: seqColl1 with: seqColl2 with: seqColl3 + Return an Array with the same size as the receiver and the + arguments, each element of which is a 4-element Arrays including + one element from the receiver and one from each argument. + + + +File: gst-base.info, Node: SequenceableCollection-copying SequenceableCollections, Next: SequenceableCollection-enumerating, Prev: SequenceableCollection-concatenating, Up: SequenceableCollection + +1.147.5 SequenceableCollection: copying SequenceableCollections +--------------------------------------------------------------- + +, aSequenceableCollection + Append aSequenceableCollection at the end of the receiver (using + #add:), and answer a new collection + +copyAfter: anObject + Answer a new collection holding all the elements of the receiver + after the first occurrence of anObject, up to the last. + +copyAfterLast: anObject + Answer a new collection holding all the elements of the receiver + after the last occurrence of anObject, up to the last. + +copyFrom: start + Answer a new collection containing all the items in the receiver + from the start-th. + +copyFrom: start to: stop + Answer a new collection containing all the items in the receiver + from the start-th and to the stop-th + +copyReplaceAll: oldSubCollection with: newSubCollection + Answer a new collection in which all the sequences matching + oldSubCollection are replaced with newSubCollection + +copyReplaceFrom: start to: stop with: replacementCollection + Answer a new collection of the same class as the receiver that + contains the same elements as the receiver, in the same order, + except for elements from index `start' to index `stop'. + + If start < stop, these are replaced by the contents of the + replacementCollection. Instead, If start = (stop + 1), like in + `copyReplaceFrom: 4 to: 3 with: anArray', then every element of + the receiver will be present in the answered copy; the operation + will be an append if stop is equal to the size of the receiver or, + if it is not, an insert before index `start'. + +copyReplaceFrom: start to: stop withObject: anObject + Answer a new collection of the same class as the receiver that + contains the same elements as the receiver, in the same order, + except for elements from index `start' to index `stop'. + + If start < stop, these are replaced by stop-start+1 copies of + anObject. Instead, If start = (stop + 1), then every element of + the receiver will be present in the answered copy; the operation + will be an append if stop is equal to the size of the receiver or, + if it is not, an insert before index `start'. + +copyUpTo: anObject + Answer a new collection holding all the elements of the receiver + from the first up to the first occurrence of anObject, excluded. + +copyUpToLast: anObject + Answer a new collection holding all the elements of the receiver + from the first up to the last occurrence of anObject, excluded. + + + +File: gst-base.info, Node: SequenceableCollection-enumerating, Next: SequenceableCollection-replacing items, Prev: SequenceableCollection-copying SequenceableCollections, Up: SequenceableCollection + +1.147.6 SequenceableCollection: enumerating +------------------------------------------- + +anyOne + Answer an unspecified element of the collection. + +do: aBlock + Evaluate aBlock for all the elements in the sequenceable collection + +do: aBlock separatedBy: sepBlock + Evaluate aBlock for all the elements in the sequenceable + collection. Between each element, evaluate sepBlock without + parameters. + +doWithIndex: aBlock + Evaluate aBlock for all the elements in the sequenceable + collection, passing the index of each element as the second + parameter. This method is mantained for backwards compatibility + and is not mandated by the ANSI standard; use #keysAndValuesDo: + +findFirst: aBlock + Returns the index of the first element of the sequenceable + collection for which aBlock returns true, or 0 if none + +findLast: aBlock + Returns the index of the last element of the sequenceable + collection for which aBlock returns true, or 0 if none does + +fold: binaryBlock + First, pass to binaryBlock the first and second elements of the + receiver; for each subsequent element, pass the result of the + previous evaluation and an element. Answer the result of the last + invocation, or the first element if the collection has size 1. + Fail if the collection is empty. + +from: startIndex to: stopIndex do: aBlock + Evaluate aBlock for all the elements in the sequenceable + collection whose indices are in the range index to stopIndex + +from: startIndex to: stopIndex doWithIndex: aBlock + Evaluate aBlock for all the elements in the sequenceable + collection whose indices are in the range index to stopIndex, + passing the index of each element as the second parameter. This + method is mantained for backwards compatibility and is not + mandated by the ANSI standard; use #from:to:keysAndValuesDo: + +from: startIndex to: stopIndex keysAndValuesDo: aBlock + Evaluate aBlock for all the elements in the sequenceable + collection whose indices are in the range index to stopIndex, + passing the index of each element as the first parameter and the + element as the second. + +keys + Return an Interval corresponding to the valid indices in the + receiver. + +keysAndValuesDo: aBlock + Evaluate aBlock for all the elements in the sequenceable + collection, passing the index of each element as the first + parameter and the element as the second. + +readStream + Answer a ReadStream streaming on the receiver + +readWriteStream + Answer a ReadWriteStream which streams on the receiver + +reverse + Answer the receivers' contents in reverse order + +reverseDo: aBlock + Evaluate aBlock for all elements in the sequenceable collection, + from the last to the first. + +with: aSequenceableCollection collect: aBlock + Evaluate aBlock for each pair of elements took respectively from + the re- ceiver and from aSequenceableCollection; answer a + collection of the same kind of the receiver, made with the block's + return values. Fail if the receiver has not the same size as + aSequenceableCollection. + +with: aSequenceableCollection do: aBlock + Evaluate aBlock for each pair of elements took respectively from + the re- ceiver and from aSequenceableCollection. Fail if the + receiver has not the same size as aSequenceableCollection. + + + +File: gst-base.info, Node: SequenceableCollection-replacing items, Next: SequenceableCollection-sorting, Prev: SequenceableCollection-enumerating, Up: SequenceableCollection + +1.147.7 SequenceableCollection: replacing items +----------------------------------------------- + +replaceAll: anObject with: anotherObject + In the receiver, replace every occurrence of anObject with + anotherObject. + +replaceFrom: start to: stop with: replacementCollection + Replace the items from start to stop with replacementCollection's + items from 1 to stop-start+1 (in unexpected order if the + collection is not sequenceable). + +replaceFrom: start to: stop with: replacementCollection startingAt: repStart + Replace the items from start to stop with replacementCollection's + items from repStart to repStart+stop-start + +replaceFrom: anIndex to: stopIndex withObject: replacementObject + Replace every item from start to stop with replacementObject. + + + +File: gst-base.info, Node: SequenceableCollection-sorting, Next: SequenceableCollection-still unclassified, Prev: SequenceableCollection-replacing items, Up: SequenceableCollection + +1.147.8 SequenceableCollection: sorting +--------------------------------------- + +sort + Sort the contents of the receiver according to the default sort + block, which uses #<= to compare items. + +sortBy: sortBlock + Sort the contents of the receiver according to the given sort + block, which accepts pair of items and returns true if the first + item is less than the second one. + + + +File: gst-base.info, Node: SequenceableCollection-still unclassified, Next: SequenceableCollection-testing, Prev: SequenceableCollection-sorting, Up: SequenceableCollection + +1.147.9 SequenceableCollection: still unclassified +-------------------------------------------------- + +nextPutAllOn: aStream + Write all the objects in the receiver to aStream + + + +File: gst-base.info, Node: SequenceableCollection-testing, Prev: SequenceableCollection-still unclassified, Up: SequenceableCollection + +1.147.10 SequenceableCollection: testing +---------------------------------------- + += aCollection + Answer whether the receiver's items match those in aCollection + +hash + Answer an hash value for the receiver + +inspect + Print all the instance variables and context of the receiver on the + Transcript + +isSequenceable + Answer whether the receiver can be accessed by a numeric index with + #at:/#at:put:. + + + +File: gst-base.info, Node: Set, Next: SharedQueue, Prev: SequenceableCollection, Up: Base classes + +1.148 Set +========= + +Defined in namespace Smalltalk +Superclass: HashedCollection +Category: Collections-Unordered + I am the typical set object; I also known how to do arithmetic on + my instances. + +* Menu: + +* Set-arithmetic:: (instance) +* Set-awful ST-80 compatibility hacks:: (instance) +* Set-comparing:: (instance) + + +File: gst-base.info, Node: Set-arithmetic, Next: Set-awful ST-80 compatibility hacks, Up: Set + +1.148.1 Set: arithmetic +----------------------- + +& aSet + Compute the set intersection of the receiver and aSet. + ++ aSet + Compute the set union of the receiver and aSet. + +- aSet + Compute the set difference of the receiver and aSet. + + + +File: gst-base.info, Node: Set-awful ST-80 compatibility hacks, Next: Set-comparing, Prev: Set-arithmetic, Up: Set + +1.148.2 Set: awful ST-80 compatibility hacks +-------------------------------------------- + +findObjectIndex: object + Tries to see if anObject exists as an indexed variable. As soon as + nil or anObject is found, the index of that slot is answered + + + +File: gst-base.info, Node: Set-comparing, Prev: Set-awful ST-80 compatibility hacks, Up: Set + +1.148.3 Set: comparing +---------------------- + +< aSet + Answer whether the receiver is a strict subset of aSet + +<= aSet + Answer whether the receiver is a subset of aSet + +> aSet + Answer whether the receiver is a strict superset of aSet + +>= aSet + Answer whether the receiver is a superset of aSet + + + +File: gst-base.info, Node: SharedQueue, Next: Signal, Prev: Set, Up: Base classes + +1.149 SharedQueue +================= + +Defined in namespace Smalltalk +Superclass: Object +Category: Language-Processes + My instances provide a guaranteed safe mechanism to allow for + communication between processes. All access to the underlying + data structures is controlled with critical sections so that + things proceed smoothly. + +* Menu: + +* SharedQueue class-instance creation:: (class) +* SharedQueue-accessing:: (instance) + + +File: gst-base.info, Node: SharedQueue class-instance creation, Next: SharedQueue-accessing, Up: SharedQueue + +1.149.1 SharedQueue class: instance creation +-------------------------------------------- + +new + Create a new instance of the receiver + +sortBlock: sortBlock + Create a new instance of the receiver which implements a priority + queue with the given sort block + + + +File: gst-base.info, Node: SharedQueue-accessing, Prev: SharedQueue class-instance creation, Up: SharedQueue + +1.149.2 SharedQueue: accessing +------------------------------ + +isEmpty + Answer whether there is an object on the queue + +next + Wait for an object to be on the queue, then remove it and answer it + +nextPut: value + Put value on the queue and answer it + +peek + Wait for an object to be on the queue if necessary, then answer the + same object that #next would answer without removing it. + + + +File: gst-base.info, Node: Signal, Next: SingletonProxy, Prev: SharedQueue, Up: Base classes + +1.150 Signal +============ + +Defined in namespace Smalltalk +Superclass: Object +Category: Language-Exceptions + My instances describe an exception that has happened, and are + passed to exception handlers. Apart from containing information on + the generated exception and its arguments, they contain methods + that allow you to resume execution, leave the #on:do:... snippet, + and pass the exception to an handler with a lower priority. + +* Menu: + +* Signal-accessing:: (instance) +* Signal-copying:: (instance) +* Signal-exception handling:: (instance) + + +File: gst-base.info, Node: Signal-accessing, Next: Signal-copying, Up: Signal + +1.150.1 Signal: accessing +------------------------- + +argument + Answer the first argument of the receiver + +argumentCount + Answer how many arguments the receiver has + +arguments + Answer the arguments of the receiver + +basicMessageText + Answer an exception's message text. Do not override this method. + +description + Answer the description of the raised exception + +exception + Answer the CoreException that was raised + +messageText + Answer an exception's message text. + +messageText: aString + Set an exception's message text. + +tag + Answer an exception's tag value. If not specified, it is the same + as the message text. + +tag: anObject + Set an exception's tag value. If nil, the tag value will be the + same as the message text. + + + +File: gst-base.info, Node: Signal-copying, Next: Signal-exception handling, Prev: Signal-accessing, Up: Signal + +1.150.2 Signal: copying +----------------------- + +postCopy + Modify the receiver so that it does not refer to any instantiated + exception handler. + + + +File: gst-base.info, Node: Signal-exception handling, Prev: Signal-copying, Up: Signal + +1.150.3 Signal: exception handling +---------------------------------- + +context + Return the execution context for the #on:do: snippet + +defaultAction + Execute the default handler for the raised exception + +isNested + Answer whether the current exception handler is within the scope of + another handler for the same exception. + +isResumable + Answer whether the exception that instantiated the receiver is + resumable. + +outer + Raise the exception that instantiated the receiver, passing the + same parameters. If the receiver is resumable and the evaluated + exception action resumes then the result returned from #outer will + be the resumption value of the evaluated exception action. If the + receiver is not resumable or if the exception action does not + resume then this message will not return, and #outer will be + equivalent to #pass. + +pass + Yield control to the enclosing exception action for the receiver. + Similar to #outer, but control does not return to the currently + active exception handler. + +resignalAs: replacementException + Reinstate all handlers and execute the handler for + `replacementException'; control does not return to the currently + active exception handler. The new Signal object that is created + has the same arguments as the receiver (this might or not be + correct - if it isn't you can use an idiom such as `sig + retryUsing: [ replacementException signal ]) + +resume + If the exception is resumable, resume the execution of the block + that raised the exception; the method that was used to signal the + exception will answer the receiver. Use this method IF AND ONLY + IF you know who caused the exception and if it is possible to + resume it in that particular case + +resume: anObject + If the exception is resumable, resume the execution of the block + that raised the exception; the method that was used to signal the + exception will answer anObject. Use this method IF AND ONLY IF + you know who caused the exception and if it is possible to resume + it in that particular case + +retry + Re-execute the receiver of the #on:do: message. All handlers are + reinstated: watch out, this can easily cause an infinite loop. + +retryUsing: aBlock + Execute aBlock reinstating all handlers, and return its result from + the #signal method. + +return + Exit the #on:do: snippet, answering nil to its caller. + +return: anObject + Exit the #on:do: snippet, answering anObject to its caller. + + + +File: gst-base.info, Node: SingletonProxy, Next: SmallInteger, Prev: Signal, Up: Base classes + +1.151 SingletonProxy +==================== + +Defined in namespace Smalltalk +Superclass: AlternativeObjectProxy +Category: Streams-Files + I am a proxy that stores the class of an object rather than the + object itself, and pretends that a registered instance (which most + likely is a singleton instance of the stored class) was stored + instead. + +* Menu: + +* SingletonProxy class-accessing:: (class) +* SingletonProxy class-instance creation:: (class) +* SingletonProxy-saving and restoring:: (instance) + + +File: gst-base.info, Node: SingletonProxy class-accessing, Next: SingletonProxy class-instance creation, Up: SingletonProxy + +1.151.1 SingletonProxy class: accessing +--------------------------------------- + +acceptUsageForClass: aClass + The receiver was asked to be used as a proxy for the class aClass. + The registration is fine if the class is actually a singleton. + + + +File: gst-base.info, Node: SingletonProxy class-instance creation, Next: SingletonProxy-saving and restoring, Prev: SingletonProxy class-accessing, Up: SingletonProxy + +1.151.2 SingletonProxy class: instance creation +----------------------------------------------- + +on: anObject + Answer a proxy to be used to save anObject. The proxy stores the + class and restores the object by looking into a dictionary of + class -> singleton objects. + + + +File: gst-base.info, Node: SingletonProxy-saving and restoring, Prev: SingletonProxy class-instance creation, Up: SingletonProxy + +1.151.3 SingletonProxy: saving and restoring +-------------------------------------------- + +object + Reconstruct the object stored in the proxy and answer it; the + binaryRepresentationObject is sent the #reconstructOriginalObject + message, and the resulting object is sent the #postLoad message. + + + +File: gst-base.info, Node: SmallInteger, Next: SortedCollection, Prev: SingletonProxy, Up: Base classes + +1.152 SmallInteger +================== + +Defined in namespace Smalltalk +Superclass: Integer +Category: Language-Data types + I am the integer class of the GNU Smalltalk system. My instances + can represent signed 30 bit integers and are as efficient as + possible. + +* Menu: + +* SmallInteger class-getting limits:: (class) +* SmallInteger class-testing:: (class) +* SmallInteger-bit arithmetic:: (instance) +* SmallInteger-built ins:: (instance) +* SmallInteger-builtins:: (instance) +* SmallInteger-coercion:: (instance) +* SmallInteger-coercion methods:: (instance) +* SmallInteger-testing functionality:: (instance) + + +File: gst-base.info, Node: SmallInteger class-getting limits, Next: SmallInteger class-testing, Up: SmallInteger + +1.152.1 SmallInteger class: getting limits +------------------------------------------ + +bits + Answer the number of bits (excluding the sign) that can be + represented directly in an object pointer + +largest + Answer the largest integer represented directly in an object + pointer + +smallest + Answer the smallest integer represented directly in an object + pointer + + + +File: gst-base.info, Node: SmallInteger class-testing, Next: SmallInteger-bit arithmetic, Prev: SmallInteger class-getting limits, Up: SmallInteger + +1.152.2 SmallInteger class: testing +----------------------------------- + +isIdentity + Answer whether x = y implies x == y for instances of the receiver + + + +File: gst-base.info, Node: SmallInteger-bit arithmetic, Next: SmallInteger-built ins, Prev: SmallInteger class-testing, Up: SmallInteger + +1.152.3 SmallInteger: bit arithmetic +------------------------------------ + +highBit + Return the index of the highest order 1 bit of the receiver + +lowBit + Return the index of the lowest order 1 bit of the receiver. + + + File: gst-base.info, Node: SmallInteger-built ins, Next: SmallInteger-builtins, Prev: SmallInteger-bit arithmetic, Up: SmallInteger -1.148.4 SmallInteger: built ins +1.152.4 SmallInteger: built ins ------------------------------- * arg @@ -110,7 +944,7 @@  File: gst-base.info, Node: SmallInteger-builtins, Next: SmallInteger-coercion, Prev: SmallInteger-built ins, Up: SmallInteger -1.148.5 SmallInteger: builtins +1.152.5 SmallInteger: builtins ------------------------------ at: anIndex @@ -136,7 +970,7 @@  File: gst-base.info, Node: SmallInteger-coercion, Next: SmallInteger-coercion methods, Prev: SmallInteger-builtins, Up: SmallInteger -1.148.6 SmallInteger: coercion +1.152.6 SmallInteger: coercion ------------------------------ asCNumber @@ -147,7 +981,7 @@  File: gst-base.info, Node: SmallInteger-coercion methods, Next: SmallInteger-testing functionality, Prev: SmallInteger-coercion, Up: SmallInteger -1.148.7 SmallInteger: coercion methods +1.152.7 SmallInteger: coercion methods -------------------------------------- generality @@ -163,7 +997,7 @@  File: gst-base.info, Node: SmallInteger-testing functionality, Prev: SmallInteger-coercion methods, Up: SmallInteger -1.148.8 SmallInteger: testing functionality +1.152.8 SmallInteger: testing functionality ------------------------------------------- isSmallInteger @@ -173,7 +1007,7 @@  File: gst-base.info, Node: SortedCollection, Next: Stream, Prev: SmallInteger, Up: Base classes -1.149 SortedCollection +1.153 SortedCollection ====================== Defined in namespace Smalltalk @@ -202,7 +1036,7 @@  File: gst-base.info, Node: SortedCollection class-hacking, Next: SortedCollection class-instance creation, Up: SortedCollection -1.149.1 SortedCollection class: hacking +1.153.1 SortedCollection class: hacking --------------------------------------- defaultSortBlock @@ -212,7 +1046,7 @@  File: gst-base.info, Node: SortedCollection class-instance creation, Next: SortedCollection-basic, Prev: SortedCollection class-hacking, Up: SortedCollection -1.149.2 SortedCollection class: instance creation +1.153.2 SortedCollection class: instance creation ------------------------------------------------- new @@ -230,7 +1064,7 @@  File: gst-base.info, Node: SortedCollection-basic, Next: SortedCollection-copying, Prev: SortedCollection class-instance creation, Up: SortedCollection -1.149.3 SortedCollection: basic +1.153.3 SortedCollection: basic ------------------------------- last @@ -251,7 +1085,7 @@  File: gst-base.info, Node: SortedCollection-copying, Next: SortedCollection-disabled, Prev: SortedCollection-basic, Up: SortedCollection -1.149.4 SortedCollection: copying +1.153.4 SortedCollection: copying --------------------------------- copyEmpty: newSize @@ -262,7 +1096,7 @@  File: gst-base.info, Node: SortedCollection-disabled, Next: SortedCollection-enumerating, Prev: SortedCollection-copying, Up: SortedCollection -1.149.5 SortedCollection: disabled +1.153.5 SortedCollection: disabled ---------------------------------- add: anObject afterIndex: i @@ -290,7 +1124,7 @@  File: gst-base.info, Node: SortedCollection-enumerating, Next: SortedCollection-saving and loading, Prev: SortedCollection-disabled, Up: SortedCollection -1.149.6 SortedCollection: enumerating +1.153.6 SortedCollection: enumerating ------------------------------------- beConsistent @@ -301,7 +1135,7 @@  File: gst-base.info, Node: SortedCollection-saving and loading, Next: SortedCollection-searching, Prev: SortedCollection-enumerating, Up: SortedCollection -1.149.7 SortedCollection: saving and loading +1.153.7 SortedCollection: saving and loading -------------------------------------------- postLoad @@ -314,7 +1148,7 @@  File: gst-base.info, Node: SortedCollection-searching, Prev: SortedCollection-saving and loading, Up: SortedCollection -1.149.8 SortedCollection: searching +1.153.8 SortedCollection: searching ----------------------------------- includes: anObject @@ -333,11 +1167,11 @@  File: gst-base.info, Node: Stream, Next: String, Prev: SortedCollection, Up: Base classes -1.150 Stream +1.154 Stream ============ Defined in namespace Smalltalk -Superclass: Object +Superclass: Iterable Category: Streams I am an abstract class that provides interruptable sequential access to objects. I can return successive objects from a source, @@ -350,6 +1184,7 @@ * Stream-accessing-reading:: (instance) * Stream-accessing-writing:: (instance) * Stream-basic:: (instance) +* Stream-buffering:: (instance) * Stream-built ins:: (instance) * Stream-character writing:: (instance) * Stream-concatenating:: (instance) @@ -359,13 +1194,15 @@ * Stream-polymorphism:: (instance) * Stream-positioning:: (instance) * Stream-printing:: (instance) +* Stream-still unclassified:: (instance) * Stream-storing:: (instance) +* Stream-streaming protocol:: (instance) * Stream-testing:: (instance)  File: gst-base.info, Node: Stream-accessing-reading, Next: Stream-accessing-writing, Up: Stream -1.150.1 Stream: accessing-reading +1.154.1 Stream: accessing-reading --------------------------------- contents @@ -382,8 +1219,26 @@ Return the next anInteger objects in the receiver nextAvailable: anInteger - Return up to anInteger objects in the receiver, stopping if the - end of the stream is reached + Return up to anInteger objects in the receiver. Besides stopping + if the end of the stream is reached, this may return less than this + number of bytes for various reasons. For example, on files and + sockets this operation could be non-blocking, or could do at most + one I/O operation. + +nextAvailable: anInteger into: aCollection startingAt: pos + Place the next anInteger objects from the receiver into + aCollection, starting at position pos. Return the number of items + stored. Besides stopping if the end of the stream is reached, + this may return less than this number of bytes for various reasons. + For example, on files and sockets this operation could be + non-blocking, or could do at most one I/O operation. + +nextAvailable: anInteger putAllOn: aStream + Copy up to anInteger objects in the receiver to aStream. Besides + stopping if the end of the stream is reached, this may return less + than this number of bytes for various reasons. For example, on + files and sockets this operation could be non-blocking, or could + do at most one I/O operation. nextLine Returns a collection of the same type that the stream accesses, @@ -421,7 +1276,7 @@  File: gst-base.info, Node: Stream-accessing-writing, Next: Stream-basic, Prev: Stream-accessing-reading, Up: Stream -1.150.2 Stream: accessing-writing +1.154.2 Stream: accessing-writing --------------------------------- next: anInteger put: anObject @@ -443,9 +1298,9 @@  -File: gst-base.info, Node: Stream-basic, Next: Stream-built ins, Prev: Stream-accessing-writing, Up: Stream +File: gst-base.info, Node: Stream-basic, Next: Stream-buffering, Prev: Stream-accessing-writing, Up: Stream -1.150.3 Stream: basic +1.154.3 Stream: basic --------------------- species @@ -453,9 +1308,26 @@  -File: gst-base.info, Node: Stream-built ins, Next: Stream-character writing, Prev: Stream-basic, Up: Stream +File: gst-base.info, Node: Stream-buffering, Next: Stream-built ins, Prev: Stream-basic, Up: Stream -1.150.4 Stream: built ins +1.154.4 Stream: buffering +------------------------- + +next: anInteger into: answer startingAt: pos + Read up to anInteger bytes from the stream and store them into + answer. Return the number of bytes that were read, raising an + exception if we could not read the full amount of data. + +next: anInteger putAllOn: aStream + Read up to anInteger bytes from the stream and store them into + aStream. Return the number of bytes that were read, raising an + exception if we could not read the full amount of data. + + + +File: gst-base.info, Node: Stream-built ins, Next: Stream-character writing, Prev: Stream-buffering, Up: Stream + +1.154.5 Stream: built ins ------------------------- fileIn @@ -468,6 +1340,10 @@ will be removed from Undeclared and reused in the namespace, so that the old references will automagically point to the new value. +fileInLine: lineNum file: aFile at: charPosInt + Private - Much like a preprocessor #line directive; it is used + internally by #fileIn, and explicitly by the Emacs Smalltalk mode. + fileInLine: lineNum fileName: aString at: charPosInt Private - Much like a preprocessor #line directive; it is used internally by #fileIn, and explicitly by the Emacs Smalltalk mode. @@ -476,7 +1352,7 @@  File: gst-base.info, Node: Stream-character writing, Next: Stream-concatenating, Prev: Stream-built ins, Up: Stream -1.150.5 Stream: character writing +1.154.6 Stream: character writing --------------------------------- cr @@ -516,7 +1392,7 @@  File: gst-base.info, Node: Stream-concatenating, Next: Stream-enumerating, Prev: Stream-character writing, Up: Stream -1.150.6 Stream: concatenating +1.154.7 Stream: concatenating ----------------------------- with: aStream @@ -535,7 +1411,7 @@  File: gst-base.info, Node: Stream-enumerating, Next: Stream-filing out, Prev: Stream-concatenating, Up: Stream -1.150.7 Stream: enumerating +1.154.8 Stream: enumerating --------------------------- do: aBlock @@ -549,7 +1425,7 @@  File: gst-base.info, Node: Stream-filing out, Next: Stream-filtering, Prev: Stream-enumerating, Up: Stream -1.150.8 Stream: filing out +1.154.9 Stream: filing out -------------------------- fileOut: aClass @@ -561,8 +1437,8 @@  File: gst-base.info, Node: Stream-filtering, Next: Stream-polymorphism, Prev: Stream-filing out, Up: Stream -1.150.9 Stream: filtering -------------------------- +1.154.10 Stream: filtering +-------------------------- , aStream Answer a new stream that concatenates the data in the receiver @@ -575,19 +1451,6 @@ Note that when peeking in the returned stream, the block will be invoked multiple times, with possibly surprising results. -fold: aBlock - First, pass to binaryBlock the first and second elements of the - receiver; for each subsequent element, pass the result of the - previous evaluation and an element. Answer the result of the last - invocation, or the first element if the stream has a single - element. - -inject: value into: aBlock - First, pass to binaryBlock value and the first element of the - receiver; for each subsequent element, pass the result of the - previous evaluation and an element. Answer the result of the last - invocation, or value if the stream is empty. - lines Answer a new stream that answers lines from the receiver. @@ -618,7 +1481,7 @@  File: gst-base.info, Node: Stream-polymorphism, Next: Stream-positioning, Prev: Stream-filtering, Up: Stream -1.150.10 Stream: polymorphism +1.154.11 Stream: polymorphism ----------------------------- close @@ -634,23 +1497,22 @@  File: gst-base.info, Node: Stream-positioning, Next: Stream-printing, Prev: Stream-polymorphism, Up: Stream -1.150.11 Stream: positioning +1.154.12 Stream: positioning ---------------------------- isPositionable Answer true if the stream supports moving backwards with #skip:. -nextHunk - Answer a more-or-less arbitrary amount of data. When used on - files, this does at most one I/O operation. For other kinds of - stream, the definition may vary. This method is used by the VM - when loading data from a Smalltalk stream, and by various kind of - Stream decorators supplied with GNU Smalltalk (including zlib - streams). - skip: anInteger Move the position forwards by anInteger places +skipSeparators + Advance the receiver until we find a character that is not a + separator. Answer false if we reach the end of the stream, else + answer true; in this case, sending #next will return the first + non-separator character (possibly the same to which the stream + pointed before #skipSeparators was sent). + skipTo: anObject Move the current position to after the next occurrence of anObject and return true if anObject was found. If anObject doesn't exist, @@ -664,9 +1526,9 @@  -File: gst-base.info, Node: Stream-printing, Next: Stream-storing, Prev: Stream-positioning, Up: Stream +File: gst-base.info, Node: Stream-printing, Next: Stream-still unclassified, Prev: Stream-positioning, Up: Stream -1.150.12 Stream: printing +1.154.13 Stream: printing ------------------------- << anObject @@ -686,9 +1548,19 @@  -File: gst-base.info, Node: Stream-storing, Next: Stream-testing, Prev: Stream-printing, Up: Stream +File: gst-base.info, Node: Stream-still unclassified, Next: Stream-storing, Prev: Stream-printing, Up: Stream + +1.154.14 Stream: still unclassified +----------------------------------- -1.150.13 Stream: storing +nextPutAllOn: aStream + Write all the objects in the receiver to aStream + + + +File: gst-base.info, Node: Stream-storing, Next: Stream-streaming protocol, Prev: Stream-still unclassified, Up: Stream + +1.154.15 Stream: storing ------------------------ store: anObject @@ -698,9 +1570,22 @@  -File: gst-base.info, Node: Stream-testing, Prev: Stream-storing, Up: Stream +File: gst-base.info, Node: Stream-streaming protocol, Next: Stream-testing, Prev: Stream-storing, Up: Stream + +1.154.16 Stream: streaming protocol +----------------------------------- + +nextAvailablePutAllOn: aStream + Copy to aStream a more-or-less arbitrary amount of data. When used + on files, this does at most one I/O operation. For other kinds of + stream, the definition may vary. This method is used to do + stream-to-stream copies. + + + +File: gst-base.info, Node: Stream-testing, Prev: Stream-streaming protocol, Up: Stream -1.150.14 Stream: testing +1.154.17 Stream: testing ------------------------ atEnd @@ -722,7 +1607,7 @@  File: gst-base.info, Node: String, Next: Symbol, Prev: Stream, Up: Base classes -1.151 String +1.155 String ============ Defined in namespace Smalltalk @@ -746,6 +1631,7 @@ * String-basic:: (instance) * String-built ins:: (instance) * String-converting:: (instance) +* String-filesystem:: (instance) * String-printing:: (instance) * String-regex:: (instance) * String-testing functionality:: (instance) @@ -753,7 +1639,7 @@  File: gst-base.info, Node: String class-instance creation, Next: String class-multibyte encodings, Up: String -1.151.1 String class: instance creation +1.155.1 String class: instance creation --------------------------------------- fromCData: aCObject @@ -768,7 +1654,7 @@  File: gst-base.info, Node: String class-multibyte encodings, Next: String-accessing, Prev: String class-instance creation, Up: String -1.151.2 String class: multibyte encodings +1.155.2 String class: multibyte encodings ----------------------------------------- isUnicode @@ -779,7 +1665,7 @@  File: gst-base.info, Node: String-accessing, Next: String-basic, Prev: String class-multibyte encodings, Up: String -1.151.3 String: accessing +1.155.3 String: accessing ------------------------- byteAt: index @@ -794,7 +1680,7 @@  File: gst-base.info, Node: String-basic, Next: String-built ins, Prev: String-accessing, Up: String -1.151.4 String: basic +1.155.4 String: basic --------------------- , aString @@ -802,14 +1688,14 @@ elements in the receiver, followed by all the elements in aSequenceableCollection -= aString += aCollection Answer whether the receiver's items match those in aCollection  File: gst-base.info, Node: String-built ins, Next: String-converting, Prev: String-basic, Up: String -1.151.5 String: built ins +1.155.5 String: built ins ------------------------- asCData: aCType @@ -834,12 +1720,6 @@ hash Answer an hash value for the receiver -primReplaceFrom: start to: stop with: replacementString startingAt: replaceStart - Private - Replace the characters from start to stop with new - characters contained in replacementString (which, actually, can be - any variable byte class, starting at the replaceStart location of - replacementString - replaceFrom: start to: stop with: aString startingAt: replaceStart Replace the characters from start to stop with new characters whose ASCII codes are contained in aString, starting at the replaceStart @@ -860,9 +1740,9 @@  -File: gst-base.info, Node: String-converting, Next: String-printing, Prev: String-built ins, Up: String +File: gst-base.info, Node: String-converting, Next: String-filesystem, Prev: String-built ins, Up: String -1.151.6 String: converting +1.155.6 String: converting -------------------------- asByteArray @@ -880,9 +1760,23 @@  -File: gst-base.info, Node: String-printing, Next: String-regex, Prev: String-converting, Up: String +File: gst-base.info, Node: String-filesystem, Next: String-printing, Prev: String-converting, Up: String + +1.155.7 String: filesystem +-------------------------- + +/ aName + Answer a File object as appropriate for a file named 'aName' in + the directory represented by the receiver. -1.151.7 String: printing +asFile + Answer a File object for the file whose name is in the receiver. + + + +File: gst-base.info, Node: String-printing, Next: String-regex, Prev: String-filesystem, Up: String + +1.155.8 String: printing ------------------------ displayOn: aStream @@ -910,7 +1804,7 @@  File: gst-base.info, Node: String-regex, Next: String-testing functionality, Prev: String-printing, Up: String -1.151.8 String: regex +1.155.9 String: regex --------------------- =~ pattern @@ -938,27 +1832,34 @@ asRegex Answer the receiver, converted to a Regex object. -copyFrom: from to: to replacingAllRegex: pattern with: str +copyFrom: from to: to replacingAllRegex: pattern with: aStringOrBlock Returns the substring of the receiver between from and to. Any - match of pattern in that part of the string is replaced with str - after substituting %n sequences with the captured subexpressions - of the match (as in #%). + match of pattern in that part of the string is replaced using + aStringOrBlock as follows: if it is a block, a RegexResults object + is passed, while if it is a string, %n sequences are replaced with + the captured subexpressions of the match (as in #%). -copyFrom: from to: to replacingRegex: pattern with: str +copyFrom: from to: to replacingRegex: pattern with: aStringOrBlock Returns the substring of the receiver between from and to. If pattern has a match in that part of the string, the match is - replaced with str after substituting %n sequences with the - captured subexpressions of the match (as in #%). + replaced using aStringOrBlock as follows: if it is a block, a + RegexResults object is passed, while if it is a string, %n + sequences are replaced with the captured subexpressions of the + match (as in #%). -copyReplacingAllRegex: pattern with: str +copyReplacingAllRegex: pattern with: aStringOrBlock Returns the receiver after replacing all the matches of pattern (if - any) with str. %n sequences present in str are substituted with - the captured subexpressions of the match (as in #%). + any) using aStringOrBlock as follows: if it is a block, a + RegexResults object is passed, while if it is a string, %n + sequences are replaced with the captured subexpressions of the + match (as in #%). -copyReplacingRegex: pattern with: str +copyReplacingRegex: pattern with: aStringOrBlock Returns the receiver after replacing the first match of pattern (if - any) with str. %n sequences present in str are substituted with - the captured subexpressions of the match (as in #%). + any) using aStringOrBlock as follows: if it is a block, a + RegexResults object is passed, while if it is a string, %n + sequences are replaced with the captured subexpressions of the + match (as in #%). indexOfRegex: regexString If an occurrence of the regex is present in the receiver, return @@ -1023,16 +1924,19 @@ given range of indices. For each match, pass the RegexResults object to aBlock. -replacingAllRegex: pattern with: str +replacingAllRegex: pattern with: aStringOrBlock Returns the receiver if the pattern has no match in it. Otherwise, - any match of pattern in that part of the string is replaced with - str after substituting %n sequences with the captured - subexpressions of the match (as in #%). + any match of pattern in that part of the string is replaced using + aStringOrBlock as follows: if it is a block, a RegexResults object + is passed, while if it is a string, %n sequences are replaced with + the captured subexpressions of the match (as in #%). -replacingRegex: pattern with: str +replacingRegex: pattern with: aStringOrBlock Returns the receiver if the pattern has no match in it. If it has - a match, it is replaced with str after substituting %n sequences - with the captured subexpressions of the match (as in #%). + a match, it is replaced using aStringOrBlock as follows: if it is + a block, a RegexResults object is passed, while if it is a string, + %n sequences are replaced with the captured subexpressions of the + match (as in #%). searchRegex: pattern A synonym for #=~. Answer a RegexResults object for matching the @@ -1067,8 +1971,8 @@  File: gst-base.info, Node: String-testing functionality, Prev: String-regex, Up: String -1.151.9 String: testing functionality -------------------------------------- +1.155.10 String: testing functionality +-------------------------------------- isString Answer `true'. @@ -1077,7 +1981,7 @@  File: gst-base.info, Node: Symbol, Next: SymLink, Prev: String, Up: Base classes -1.152 Symbol +1.156 Symbol ============ Defined in namespace Smalltalk @@ -1104,7 +2008,7 @@  File: gst-base.info, Node: Symbol class-built ins, Next: Symbol class-instance creation, Up: Symbol -1.152.1 Symbol class: built ins +1.156.1 Symbol class: built ins ------------------------------- intern: aString @@ -1114,7 +2018,7 @@  File: gst-base.info, Node: Symbol class-instance creation, Next: Symbol class-symbol table, Prev: Symbol class-built ins, Up: Symbol -1.152.2 Symbol class: instance creation +1.156.2 Symbol class: instance creation --------------------------------------- internCharacter: aCharacter @@ -1149,7 +2053,7 @@  File: gst-base.info, Node: Symbol class-symbol table, Next: Symbol-basic, Prev: Symbol class-instance creation, Up: Symbol -1.152.3 Symbol class: symbol table +1.156.3 Symbol class: symbol table ---------------------------------- hasInterned: aString ifTrue: aBlock @@ -1182,7 +2086,7 @@  File: gst-base.info, Node: Symbol-basic, Next: Symbol-built ins, Prev: Symbol class-symbol table, Up: Symbol -1.152.4 Symbol: basic +1.156.4 Symbol: basic --------------------- deepCopy @@ -1207,7 +2111,7 @@  File: gst-base.info, Node: Symbol-built ins, Next: Symbol-converting, Prev: Symbol-basic, Up: Symbol -1.152.5 Symbol: built ins +1.156.5 Symbol: built ins ------------------------- = aSymbol @@ -1221,7 +2125,7 @@  File: gst-base.info, Node: Symbol-converting, Next: Symbol-misc, Prev: Symbol-built ins, Up: Symbol -1.152.6 Symbol: converting +1.156.6 Symbol: converting -------------------------- asString @@ -1235,7 +2139,7 @@  File: gst-base.info, Node: Symbol-misc, Next: Symbol-storing, Prev: Symbol-converting, Up: Symbol -1.152.7 Symbol: misc +1.156.7 Symbol: misc -------------------- species @@ -1245,7 +2149,7 @@  File: gst-base.info, Node: Symbol-storing, Next: Symbol-testing, Prev: Symbol-misc, Up: Symbol -1.152.8 Symbol: storing +1.156.8 Symbol: storing ----------------------- displayOn: aStream @@ -1274,7 +2178,7 @@  File: gst-base.info, Node: Symbol-testing, Next: Symbol-testing functionality, Prev: Symbol-storing, Up: Symbol -1.152.9 Symbol: testing +1.156.9 Symbol: testing ----------------------- isSimpleSymbol @@ -1285,7 +2189,7 @@  File: gst-base.info, Node: Symbol-testing functionality, Prev: Symbol-testing, Up: Symbol -1.152.10 Symbol: testing functionality +1.156.10 Symbol: testing functionality -------------------------------------- isString @@ -1298,7 +2202,7 @@  File: gst-base.info, Node: SymLink, Next: SystemDictionary, Prev: Symbol, Up: Base classes -1.153 SymLink +1.157 SymLink ============= Defined in namespace Smalltalk @@ -1318,7 +2222,7 @@  File: gst-base.info, Node: SymLink class-instance creation, Next: SymLink-accessing, Up: SymLink -1.153.1 SymLink class: instance creation +1.157.1 SymLink class: instance creation ---------------------------------------- symbol: aSymbol nextLink: aSymLink @@ -1329,7 +2233,7 @@  File: gst-base.info, Node: SymLink-accessing, Next: SymLink-iteration, Prev: SymLink class-instance creation, Up: SymLink -1.153.2 SymLink: accessing +1.157.2 SymLink: accessing -------------------------- symbol @@ -1342,7 +2246,7 @@  File: gst-base.info, Node: SymLink-iteration, Next: SymLink-printing, Prev: SymLink-accessing, Up: SymLink -1.153.3 SymLink: iteration +1.157.3 SymLink: iteration -------------------------- do: aBlock @@ -1352,7 +2256,7 @@  File: gst-base.info, Node: SymLink-printing, Prev: SymLink-iteration, Up: SymLink -1.153.4 SymLink: printing +1.157.4 SymLink: printing ------------------------- printOn: aStream @@ -1362,7 +2266,7 @@  File: gst-base.info, Node: SystemDictionary, Next: SystemExceptions.AlreadyDefined, Prev: SymLink, Up: Base classes -1.154 SystemDictionary +1.158 SystemDictionary ====================== Defined in namespace Smalltalk @@ -1388,7 +2292,7 @@  File: gst-base.info, Node: SystemDictionary class-initialization, Next: SystemDictionary-basic, Up: SystemDictionary -1.154.1 SystemDictionary class: initialization +1.158.1 SystemDictionary class: initialization ---------------------------------------------- initialize @@ -1398,7 +2302,7 @@  File: gst-base.info, Node: SystemDictionary-basic, Next: SystemDictionary-builtins, Prev: SystemDictionary class-initialization, Up: SystemDictionary -1.154.2 SystemDictionary: basic +1.158.2 SystemDictionary: basic ------------------------------- halt @@ -1412,7 +2316,7 @@  File: gst-base.info, Node: SystemDictionary-builtins, Next: SystemDictionary-c call-outs, Prev: SystemDictionary-basic, Up: SystemDictionary -1.154.3 SystemDictionary: builtins +1.158.3 SystemDictionary: builtins ---------------------------------- basicBacktrace @@ -1457,7 +2361,7 @@  File: gst-base.info, Node: SystemDictionary-c call-outs, Next: SystemDictionary-command-line, Prev: SystemDictionary-builtins, Up: SystemDictionary -1.154.4 SystemDictionary: c call-outs +1.158.4 SystemDictionary: c call-outs ------------------------------------- getArgc @@ -1479,7 +2383,7 @@  File: gst-base.info, Node: SystemDictionary-command-line, Next: SystemDictionary-miscellaneous, Prev: SystemDictionary-c call-outs, Up: SystemDictionary -1.154.5 SystemDictionary: command-line +1.158.5 SystemDictionary: command-line -------------------------------------- arguments: pattern do: actionBlock @@ -1531,7 +2435,7 @@  File: gst-base.info, Node: SystemDictionary-miscellaneous, Next: SystemDictionary-printing, Prev: SystemDictionary-command-line, Up: SystemDictionary -1.154.6 SystemDictionary: miscellaneous +1.158.6 SystemDictionary: miscellaneous --------------------------------------- arguments @@ -1548,7 +2452,7 @@  File: gst-base.info, Node: SystemDictionary-printing, Next: SystemDictionary-special accessing, Prev: SystemDictionary-miscellaneous, Up: SystemDictionary -1.154.7 SystemDictionary: printing +1.158.7 SystemDictionary: printing ---------------------------------- nameIn: aNamespace @@ -1564,7 +2468,7 @@  File: gst-base.info, Node: SystemDictionary-special accessing, Next: SystemDictionary-testing, Prev: SystemDictionary-printing, Up: SystemDictionary -1.154.8 SystemDictionary: special accessing +1.158.8 SystemDictionary: special accessing ------------------------------------------- addFeature: aFeature @@ -1584,7 +2488,7 @@  File: gst-base.info, Node: SystemDictionary-testing, Prev: SystemDictionary-special accessing, Up: SystemDictionary -1.154.9 SystemDictionary: testing +1.158.9 SystemDictionary: testing --------------------------------- imageLocal @@ -1598,7 +2502,7 @@  File: gst-base.info, Node: SystemExceptions.AlreadyDefined, Next: SystemExceptions.ArgumentOutOfRange, Prev: SystemDictionary, Up: Base classes -1.155 SystemExceptions.AlreadyDefined +1.159 SystemExceptions.AlreadyDefined ===================================== Defined in namespace Smalltalk.SystemExceptions @@ -1614,7 +2518,7 @@  File: gst-base.info, Node: SystemExceptions.AlreadyDefined-accessing, Up: SystemExceptions.AlreadyDefined -1.155.1 SystemExceptions.AlreadyDefined: accessing +1.159.1 SystemExceptions.AlreadyDefined: accessing -------------------------------------------------- description @@ -1624,7 +2528,7 @@  File: gst-base.info, Node: SystemExceptions.ArgumentOutOfRange, Next: SystemExceptions.BadReturn, Prev: SystemExceptions.AlreadyDefined, Up: Base classes -1.156 SystemExceptions.ArgumentOutOfRange +1.160 SystemExceptions.ArgumentOutOfRange ========================================= Defined in namespace Smalltalk.SystemExceptions @@ -1641,7 +2545,7 @@  File: gst-base.info, Node: SystemExceptions.ArgumentOutOfRange class-signaling, Next: SystemExceptions.ArgumentOutOfRange-accessing, Up: SystemExceptions.ArgumentOutOfRange -1.156.1 SystemExceptions.ArgumentOutOfRange class: signaling +1.160.1 SystemExceptions.ArgumentOutOfRange class: signaling ------------------------------------------------------------ signalOn: value mustBeBetween: low and: high @@ -1651,7 +2555,7 @@  File: gst-base.info, Node: SystemExceptions.ArgumentOutOfRange-accessing, Prev: SystemExceptions.ArgumentOutOfRange class-signaling, Up: SystemExceptions.ArgumentOutOfRange -1.156.2 SystemExceptions.ArgumentOutOfRange: accessing +1.160.2 SystemExceptions.ArgumentOutOfRange: accessing ------------------------------------------------------ description @@ -1673,7 +2577,7 @@  File: gst-base.info, Node: SystemExceptions.BadReturn, Next: SystemExceptions.CInterfaceError, Prev: SystemExceptions.ArgumentOutOfRange, Up: Base classes -1.157 SystemExceptions.BadReturn +1.161 SystemExceptions.BadReturn ================================ Defined in namespace Smalltalk.SystemExceptions @@ -1689,7 +2593,7 @@  File: gst-base.info, Node: SystemExceptions.BadReturn-accessing, Up: SystemExceptions.BadReturn -1.157.1 SystemExceptions.BadReturn: accessing +1.161.1 SystemExceptions.BadReturn: accessing --------------------------------------------- description @@ -1699,7 +2603,7 @@  File: gst-base.info, Node: SystemExceptions.CInterfaceError, Next: SystemExceptions.EmptyCollection, Prev: SystemExceptions.BadReturn, Up: Base classes -1.158 SystemExceptions.CInterfaceError +1.162 SystemExceptions.CInterfaceError ====================================== Defined in namespace Smalltalk.SystemExceptions @@ -1715,7 +2619,7 @@  File: gst-base.info, Node: SystemExceptions.CInterfaceError-accessing, Up: SystemExceptions.CInterfaceError -1.158.1 SystemExceptions.CInterfaceError: accessing +1.162.1 SystemExceptions.CInterfaceError: accessing --------------------------------------------------- description @@ -1725,7 +2629,7 @@  File: gst-base.info, Node: SystemExceptions.EmptyCollection, Next: SystemExceptions.EndOfStream, Prev: SystemExceptions.CInterfaceError, Up: Base classes -1.159 SystemExceptions.EmptyCollection +1.163 SystemExceptions.EmptyCollection ====================================== Defined in namespace Smalltalk.SystemExceptions @@ -1740,7 +2644,7 @@  File: gst-base.info, Node: SystemExceptions.EmptyCollection-accessing, Up: SystemExceptions.EmptyCollection -1.159.1 SystemExceptions.EmptyCollection: accessing +1.163.1 SystemExceptions.EmptyCollection: accessing --------------------------------------------------- description @@ -1750,7 +2654,7 @@  File: gst-base.info, Node: SystemExceptions.EndOfStream, Next: SystemExceptions.FileError, Prev: SystemExceptions.EmptyCollection, Up: Base classes -1.160 SystemExceptions.EndOfStream +1.164 SystemExceptions.EndOfStream ================================== Defined in namespace Smalltalk.SystemExceptions @@ -1766,7 +2670,7 @@  File: gst-base.info, Node: SystemExceptions.EndOfStream class-signaling, Next: SystemExceptions.EndOfStream-accessing, Up: SystemExceptions.EndOfStream -1.160.1 SystemExceptions.EndOfStream class: signaling +1.164.1 SystemExceptions.EndOfStream class: signaling ----------------------------------------------------- signalOn: stream @@ -1776,7 +2680,7 @@  File: gst-base.info, Node: SystemExceptions.EndOfStream-accessing, Prev: SystemExceptions.EndOfStream class-signaling, Up: SystemExceptions.EndOfStream -1.160.2 SystemExceptions.EndOfStream: accessing +1.164.2 SystemExceptions.EndOfStream: accessing ----------------------------------------------- description @@ -1792,7 +2696,7 @@  File: gst-base.info, Node: SystemExceptions.FileError, Next: SystemExceptions.IndexOutOfRange, Prev: SystemExceptions.EndOfStream, Up: Base classes -1.161 SystemExceptions.FileError +1.165 SystemExceptions.FileError ================================ Defined in namespace Smalltalk.SystemExceptions @@ -1808,7 +2712,7 @@  File: gst-base.info, Node: SystemExceptions.FileError-accessing, Up: SystemExceptions.FileError -1.161.1 SystemExceptions.FileError: accessing +1.165.1 SystemExceptions.FileError: accessing --------------------------------------------- description @@ -1818,7 +2722,7 @@  File: gst-base.info, Node: SystemExceptions.IndexOutOfRange, Next: SystemExceptions.InvalidArgument, Prev: SystemExceptions.FileError, Up: Base classes -1.162 SystemExceptions.IndexOutOfRange +1.166 SystemExceptions.IndexOutOfRange ====================================== Defined in namespace Smalltalk.SystemExceptions @@ -1835,7 +2739,7 @@  File: gst-base.info, Node: SystemExceptions.IndexOutOfRange class-signaling, Next: SystemExceptions.IndexOutOfRange-accessing, Up: SystemExceptions.IndexOutOfRange -1.162.1 SystemExceptions.IndexOutOfRange class: signaling +1.166.1 SystemExceptions.IndexOutOfRange class: signaling --------------------------------------------------------- signalOn: aCollection withIndex: value @@ -1845,7 +2749,7 @@  File: gst-base.info, Node: SystemExceptions.IndexOutOfRange-accessing, Prev: SystemExceptions.IndexOutOfRange class-signaling, Up: SystemExceptions.IndexOutOfRange -1.162.2 SystemExceptions.IndexOutOfRange: accessing +1.166.2 SystemExceptions.IndexOutOfRange: accessing --------------------------------------------------- collection @@ -1864,7 +2768,7 @@  File: gst-base.info, Node: SystemExceptions.InvalidArgument, Next: SystemExceptions.InvalidProcessState, Prev: SystemExceptions.IndexOutOfRange, Up: Base classes -1.163 SystemExceptions.InvalidArgument +1.167 SystemExceptions.InvalidArgument ====================================== Defined in namespace Smalltalk.SystemExceptions @@ -1879,7 +2783,7 @@  File: gst-base.info, Node: SystemExceptions.InvalidArgument-accessing, Up: SystemExceptions.InvalidArgument -1.163.1 SystemExceptions.InvalidArgument: accessing +1.167.1 SystemExceptions.InvalidArgument: accessing --------------------------------------------------- messageText @@ -1889,7 +2793,7 @@  File: gst-base.info, Node: SystemExceptions.InvalidProcessState, Next: SystemExceptions.InvalidSize, Prev: SystemExceptions.InvalidArgument, Up: Base classes -1.164 SystemExceptions.InvalidProcessState +1.168 SystemExceptions.InvalidProcessState ========================================== Defined in namespace Smalltalk.SystemExceptions @@ -1905,7 +2809,7 @@  File: gst-base.info, Node: SystemExceptions.InvalidProcessState-accessing, Up: SystemExceptions.InvalidProcessState -1.164.1 SystemExceptions.InvalidProcessState: accessing +1.168.1 SystemExceptions.InvalidProcessState: accessing ------------------------------------------------------- description @@ -1915,7 +2819,7 @@  File: gst-base.info, Node: SystemExceptions.InvalidSize, Next: SystemExceptions.InvalidValue, Prev: SystemExceptions.InvalidProcessState, Up: Base classes -1.165 SystemExceptions.InvalidSize +1.169 SystemExceptions.InvalidSize ================================== Defined in namespace Smalltalk.SystemExceptions @@ -1930,7 +2834,7 @@  File: gst-base.info, Node: SystemExceptions.InvalidSize-accessing, Up: SystemExceptions.InvalidSize -1.165.1 SystemExceptions.InvalidSize: accessing +1.169.1 SystemExceptions.InvalidSize: accessing ----------------------------------------------- description @@ -1940,7 +2844,7 @@  File: gst-base.info, Node: SystemExceptions.InvalidValue, Next: SystemExceptions.MustBeBoolean, Prev: SystemExceptions.InvalidSize, Up: Base classes -1.166 SystemExceptions.InvalidValue +1.170 SystemExceptions.InvalidValue =================================== Defined in namespace Smalltalk.SystemExceptions @@ -1957,7 +2861,7 @@  File: gst-base.info, Node: SystemExceptions.InvalidValue class-signaling, Next: SystemExceptions.InvalidValue-accessing, Up: SystemExceptions.InvalidValue -1.166.1 SystemExceptions.InvalidValue class: signaling +1.170.1 SystemExceptions.InvalidValue class: signaling ------------------------------------------------------ signalOn: value @@ -1971,7 +2875,7 @@  File: gst-base.info, Node: SystemExceptions.InvalidValue-accessing, Prev: SystemExceptions.InvalidValue class-signaling, Up: SystemExceptions.InvalidValue -1.166.2 SystemExceptions.InvalidValue: accessing +1.170.2 SystemExceptions.InvalidValue: accessing ------------------------------------------------ description @@ -1990,7 +2894,7 @@  File: gst-base.info, Node: SystemExceptions.MustBeBoolean, Next: SystemExceptions.MutationError, Prev: SystemExceptions.InvalidValue, Up: Base classes -1.167 SystemExceptions.MustBeBoolean +1.171 SystemExceptions.MustBeBoolean ==================================== Defined in namespace Smalltalk.SystemExceptions @@ -2005,7 +2909,7 @@  File: gst-base.info, Node: SystemExceptions.MustBeBoolean class-signaling, Up: SystemExceptions.MustBeBoolean -1.167.1 SystemExceptions.MustBeBoolean class: signaling +1.171.1 SystemExceptions.MustBeBoolean class: signaling ------------------------------------------------------- signalOn: anObject @@ -2016,7 +2920,7 @@  File: gst-base.info, Node: SystemExceptions.MutationError, Next: SystemExceptions.NoRunnableProcess, Prev: SystemExceptions.MustBeBoolean, Up: Base classes -1.168 SystemExceptions.MutationError +1.172 SystemExceptions.MutationError ==================================== Defined in namespace Smalltalk.SystemExceptions @@ -2032,7 +2936,7 @@  File: gst-base.info, Node: SystemExceptions.MutationError class-instance creation, Next: SystemExceptions.MutationError-accessing, Up: SystemExceptions.MutationError -1.168.1 SystemExceptions.MutationError class: instance creation +1.172.1 SystemExceptions.MutationError class: instance creation --------------------------------------------------------------- new @@ -2043,7 +2947,7 @@  File: gst-base.info, Node: SystemExceptions.MutationError-accessing, Prev: SystemExceptions.MutationError class-instance creation, Up: SystemExceptions.MutationError -1.168.2 SystemExceptions.MutationError: accessing +1.172.2 SystemExceptions.MutationError: accessing ------------------------------------------------- description @@ -2053,7 +2957,7 @@  File: gst-base.info, Node: SystemExceptions.NoRunnableProcess, Next: SystemExceptions.NotEnoughElements, Prev: SystemExceptions.MutationError, Up: Base classes -1.169 SystemExceptions.NoRunnableProcess +1.173 SystemExceptions.NoRunnableProcess ======================================== Defined in namespace Smalltalk.SystemExceptions @@ -2068,7 +2972,7 @@  File: gst-base.info, Node: SystemExceptions.NoRunnableProcess-accessing, Up: SystemExceptions.NoRunnableProcess -1.169.1 SystemExceptions.NoRunnableProcess: accessing +1.173.1 SystemExceptions.NoRunnableProcess: accessing ----------------------------------------------------- description @@ -2078,7 +2982,7 @@  File: gst-base.info, Node: SystemExceptions.NotEnoughElements, Next: SystemExceptions.NotFound, Prev: SystemExceptions.NoRunnableProcess, Up: Base classes -1.170 SystemExceptions.NotEnoughElements +1.174 SystemExceptions.NotEnoughElements ======================================== Defined in namespace Smalltalk.SystemExceptions @@ -2095,7 +2999,7 @@  File: gst-base.info, Node: SystemExceptions.NotEnoughElements class-signaling, Next: SystemExceptions.NotEnoughElements-accessing, Up: SystemExceptions.NotEnoughElements -1.170.1 SystemExceptions.NotEnoughElements class: signaling +1.174.1 SystemExceptions.NotEnoughElements class: signaling ----------------------------------------------------------- signalOn: remainingCount @@ -2105,7 +3009,7 @@  File: gst-base.info, Node: SystemExceptions.NotEnoughElements-accessing, Prev: SystemExceptions.NotEnoughElements class-signaling, Up: SystemExceptions.NotEnoughElements -1.170.2 SystemExceptions.NotEnoughElements: accessing +1.174.2 SystemExceptions.NotEnoughElements: accessing ----------------------------------------------------- description @@ -2124,7 +3028,7 @@  File: gst-base.info, Node: SystemExceptions.NotFound, Next: SystemExceptions.NotImplemented, Prev: SystemExceptions.NotEnoughElements, Up: Base classes -1.171 SystemExceptions.NotFound +1.175 SystemExceptions.NotFound =============================== Defined in namespace Smalltalk.SystemExceptions @@ -2140,7 +3044,7 @@  File: gst-base.info, Node: SystemExceptions.NotFound class-accessing, Next: SystemExceptions.NotFound-accessing, Up: SystemExceptions.NotFound -1.171.1 SystemExceptions.NotFound class: accessing +1.175.1 SystemExceptions.NotFound class: accessing -------------------------------------------------- signalOn: value what: aString @@ -2151,7 +3055,7 @@  File: gst-base.info, Node: SystemExceptions.NotFound-accessing, Prev: SystemExceptions.NotFound class-accessing, Up: SystemExceptions.NotFound -1.171.2 SystemExceptions.NotFound: accessing +1.175.2 SystemExceptions.NotFound: accessing -------------------------------------------- description @@ -2161,7 +3065,7 @@  File: gst-base.info, Node: SystemExceptions.NotImplemented, Next: SystemExceptions.NotIndexable, Prev: SystemExceptions.NotFound, Up: Base classes -1.172 SystemExceptions.NotImplemented +1.176 SystemExceptions.NotImplemented ===================================== Defined in namespace Smalltalk.SystemExceptions @@ -2176,7 +3080,7 @@  File: gst-base.info, Node: SystemExceptions.NotImplemented-accessing, Up: SystemExceptions.NotImplemented -1.172.1 SystemExceptions.NotImplemented: accessing +1.176.1 SystemExceptions.NotImplemented: accessing -------------------------------------------------- description @@ -2186,7 +3090,7 @@  File: gst-base.info, Node: SystemExceptions.NotIndexable, Next: SystemExceptions.NotYetImplemented, Prev: SystemExceptions.NotImplemented, Up: Base classes -1.173 SystemExceptions.NotIndexable +1.177 SystemExceptions.NotIndexable =================================== Defined in namespace Smalltalk.SystemExceptions @@ -2201,7 +3105,7 @@  File: gst-base.info, Node: SystemExceptions.NotIndexable-accessing, Up: SystemExceptions.NotIndexable -1.173.1 SystemExceptions.NotIndexable: accessing +1.177.1 SystemExceptions.NotIndexable: accessing ------------------------------------------------ description @@ -2211,7 +3115,7 @@  File: gst-base.info, Node: SystemExceptions.NotYetImplemented, Next: SystemExceptions.PackageNotAvailable, Prev: SystemExceptions.NotIndexable, Up: Base classes -1.174 SystemExceptions.NotYetImplemented +1.178 SystemExceptions.NotYetImplemented ======================================== Defined in namespace Smalltalk.SystemExceptions @@ -2227,7 +3131,7 @@  File: gst-base.info, Node: SystemExceptions.NotYetImplemented-accessing, Up: SystemExceptions.NotYetImplemented -1.174.1 SystemExceptions.NotYetImplemented: accessing +1.178.1 SystemExceptions.NotYetImplemented: accessing ----------------------------------------------------- description @@ -2237,7 +3141,7 @@  File: gst-base.info, Node: SystemExceptions.PackageNotAvailable, Next: SystemExceptions.PrimitiveFailed, Prev: SystemExceptions.NotYetImplemented, Up: Base classes -1.175 SystemExceptions.PackageNotAvailable +1.179 SystemExceptions.PackageNotAvailable ========================================== Defined in namespace Smalltalk.SystemExceptions @@ -2252,7 +3156,7 @@  File: gst-base.info, Node: SystemExceptions.PackageNotAvailable class-still unclassified, Next: SystemExceptions.PackageNotAvailable-description, Up: SystemExceptions.PackageNotAvailable -1.175.1 SystemExceptions.PackageNotAvailable class: still unclassified +1.179.1 SystemExceptions.PackageNotAvailable class: still unclassified ---------------------------------------------------------------------- signal: aString @@ -2263,7 +3167,7 @@  File: gst-base.info, Node: SystemExceptions.PackageNotAvailable-description, Prev: SystemExceptions.PackageNotAvailable class-still unclassified, Up: SystemExceptions.PackageNotAvailable -1.175.2 SystemExceptions.PackageNotAvailable: description +1.179.2 SystemExceptions.PackageNotAvailable: description --------------------------------------------------------- isResumable @@ -2274,7 +3178,7 @@  File: gst-base.info, Node: SystemExceptions.PrimitiveFailed, Next: SystemExceptions.ProcessBeingTerminated, Prev: SystemExceptions.PackageNotAvailable, Up: Base classes -1.176 SystemExceptions.PrimitiveFailed +1.180 SystemExceptions.PrimitiveFailed ====================================== Defined in namespace Smalltalk.SystemExceptions @@ -2289,7 +3193,7 @@  File: gst-base.info, Node: SystemExceptions.PrimitiveFailed-accessing, Up: SystemExceptions.PrimitiveFailed -1.176.1 SystemExceptions.PrimitiveFailed: accessing +1.180.1 SystemExceptions.PrimitiveFailed: accessing --------------------------------------------------- description @@ -2299,7 +3203,7 @@  File: gst-base.info, Node: SystemExceptions.ProcessBeingTerminated, Next: SystemExceptions.ProcessTerminated, Prev: SystemExceptions.PrimitiveFailed, Up: Base classes -1.177 SystemExceptions.ProcessBeingTerminated +1.181 SystemExceptions.ProcessBeingTerminated ============================================= Defined in namespace Smalltalk.SystemExceptions @@ -2314,7 +3218,7 @@  File: gst-base.info, Node: SystemExceptions.ProcessBeingTerminated-accessing, Up: SystemExceptions.ProcessBeingTerminated -1.177.1 SystemExceptions.ProcessBeingTerminated: accessing +1.181.1 SystemExceptions.ProcessBeingTerminated: accessing ---------------------------------------------------------- description @@ -2330,7 +3234,7 @@  File: gst-base.info, Node: SystemExceptions.ProcessTerminated, Next: SystemExceptions.ReadOnlyObject, Prev: SystemExceptions.ProcessBeingTerminated, Up: Base classes -1.178 SystemExceptions.ProcessTerminated +1.182 SystemExceptions.ProcessTerminated ======================================== Defined in namespace Smalltalk.SystemExceptions @@ -2346,7 +3250,7 @@  File: gst-base.info, Node: SystemExceptions.ProcessTerminated-accessing, Up: SystemExceptions.ProcessTerminated -1.178.1 SystemExceptions.ProcessTerminated: accessing +1.182.1 SystemExceptions.ProcessTerminated: accessing ----------------------------------------------------- description @@ -2356,7 +3260,7 @@  File: gst-base.info, Node: SystemExceptions.ReadOnlyObject, Next: SystemExceptions.SecurityError, Prev: SystemExceptions.ProcessTerminated, Up: Base classes -1.179 SystemExceptions.ReadOnlyObject +1.183 SystemExceptions.ReadOnlyObject ===================================== Defined in namespace Smalltalk.SystemExceptions @@ -2371,7 +3275,7 @@  File: gst-base.info, Node: SystemExceptions.ReadOnlyObject-accessing, Up: SystemExceptions.ReadOnlyObject -1.179.1 SystemExceptions.ReadOnlyObject: accessing +1.183.1 SystemExceptions.ReadOnlyObject: accessing -------------------------------------------------- description @@ -2381,7 +3285,7 @@  File: gst-base.info, Node: SystemExceptions.SecurityError, Next: SystemExceptions.ShouldNotImplement, Prev: SystemExceptions.ReadOnlyObject, Up: Base classes -1.180 SystemExceptions.SecurityError +1.184 SystemExceptions.SecurityError ==================================== Defined in namespace Smalltalk.SystemExceptions @@ -2398,7 +3302,7 @@  File: gst-base.info, Node: SystemExceptions.SecurityError class-accessing, Next: SystemExceptions.SecurityError-accessing, Up: SystemExceptions.SecurityError -1.180.1 SystemExceptions.SecurityError class: accessing +1.184.1 SystemExceptions.SecurityError class: accessing ------------------------------------------------------- signal: aPermission @@ -2409,7 +3313,7 @@  File: gst-base.info, Node: SystemExceptions.SecurityError-accessing, Prev: SystemExceptions.SecurityError class-accessing, Up: SystemExceptions.SecurityError -1.180.2 SystemExceptions.SecurityError: accessing +1.184.2 SystemExceptions.SecurityError: accessing ------------------------------------------------- description @@ -2425,7 +3329,7 @@  File: gst-base.info, Node: SystemExceptions.ShouldNotImplement, Next: SystemExceptions.SubclassResponsibility, Prev: SystemExceptions.SecurityError, Up: Base classes -1.181 SystemExceptions.ShouldNotImplement +1.185 SystemExceptions.ShouldNotImplement ========================================= Defined in namespace Smalltalk.SystemExceptions @@ -2441,7 +3345,7 @@  File: gst-base.info, Node: SystemExceptions.ShouldNotImplement-accessing, Up: SystemExceptions.ShouldNotImplement -1.181.1 SystemExceptions.ShouldNotImplement: accessing +1.185.1 SystemExceptions.ShouldNotImplement: accessing ------------------------------------------------------ description @@ -2449,9 +3353,9 @@  -File: gst-base.info, Node: SystemExceptions.SubclassResponsibility, Next: SystemExceptions.UserInterrupt, Prev: SystemExceptions.ShouldNotImplement, Up: Base classes +File: gst-base.info, Node: SystemExceptions.SubclassResponsibility, Next: SystemExceptions.UnhandledException, Prev: SystemExceptions.ShouldNotImplement, Up: Base classes -1.182 SystemExceptions.SubclassResponsibility +1.186 SystemExceptions.SubclassResponsibility ============================================= Defined in namespace Smalltalk.SystemExceptions @@ -2467,7 +3371,7 @@  File: gst-base.info, Node: SystemExceptions.SubclassResponsibility-accessing, Up: SystemExceptions.SubclassResponsibility -1.182.1 SystemExceptions.SubclassResponsibility: accessing +1.186.1 SystemExceptions.SubclassResponsibility: accessing ---------------------------------------------------------- description @@ -2475,9 +3379,38 @@  -File: gst-base.info, Node: SystemExceptions.UserInterrupt, Next: SystemExceptions.VerificationError, Prev: SystemExceptions.SubclassResponsibility, Up: Base classes +File: gst-base.info, Node: SystemExceptions.UnhandledException, Next: SystemExceptions.UserInterrupt, Prev: SystemExceptions.SubclassResponsibility, Up: Base classes + +1.187 SystemExceptions.UnhandledException +========================================= + +Defined in namespace Smalltalk.SystemExceptions +Superclass: Exception +Category: Language-Exception + I am raised when a backtrace is shown to terminate the current + process. + +* Menu: + +* SystemExceptions.UnhandledException-accessing:: (instance) + + +File: gst-base.info, Node: SystemExceptions.UnhandledException-accessing, Up: SystemExceptions.UnhandledException + +1.187.1 SystemExceptions.UnhandledException: accessing +------------------------------------------------------ + +defaultAction + Terminate the currrent process. + +description + Answer a textual description of the exception. + + + +File: gst-base.info, Node: SystemExceptions.UserInterrupt, Next: SystemExceptions.VerificationError, Prev: SystemExceptions.UnhandledException, Up: Base classes -1.183 SystemExceptions.UserInterrupt +1.188 SystemExceptions.UserInterrupt ==================================== Defined in namespace Smalltalk.SystemExceptions @@ -2492,7 +3425,7 @@  File: gst-base.info, Node: SystemExceptions.UserInterrupt-accessing, Up: SystemExceptions.UserInterrupt -1.183.1 SystemExceptions.UserInterrupt: accessing +1.188.1 SystemExceptions.UserInterrupt: accessing ------------------------------------------------- description @@ -2502,7 +3435,7 @@  File: gst-base.info, Node: SystemExceptions.VerificationError, Next: SystemExceptions.VMError, Prev: SystemExceptions.UserInterrupt, Up: Base classes -1.184 SystemExceptions.VerificationError +1.189 SystemExceptions.VerificationError ======================================== Defined in namespace Smalltalk.SystemExceptions @@ -2517,7 +3450,7 @@  File: gst-base.info, Node: SystemExceptions.VerificationError-accessing, Up: SystemExceptions.VerificationError -1.184.1 SystemExceptions.VerificationError: accessing +1.189.1 SystemExceptions.VerificationError: accessing ----------------------------------------------------- description @@ -2527,7 +3460,7 @@  File: gst-base.info, Node: SystemExceptions.VMError, Next: SystemExceptions.WrongArgumentCount, Prev: SystemExceptions.VerificationError, Up: Base classes -1.185 SystemExceptions.VMError +1.190 SystemExceptions.VMError ============================== Defined in namespace Smalltalk.SystemExceptions @@ -2542,7 +3475,7 @@  File: gst-base.info, Node: SystemExceptions.VMError-accessing, Up: SystemExceptions.VMError -1.185.1 SystemExceptions.VMError: accessing +1.190.1 SystemExceptions.VMError: accessing ------------------------------------------- description @@ -2552,7 +3485,7 @@  File: gst-base.info, Node: SystemExceptions.WrongArgumentCount, Next: SystemExceptions.WrongClass, Prev: SystemExceptions.VMError, Up: Base classes -1.186 SystemExceptions.WrongArgumentCount +1.191 SystemExceptions.WrongArgumentCount ========================================= Defined in namespace Smalltalk.SystemExceptions @@ -2568,7 +3501,7 @@  File: gst-base.info, Node: SystemExceptions.WrongArgumentCount-accessing, Up: SystemExceptions.WrongArgumentCount -1.186.1 SystemExceptions.WrongArgumentCount: accessing +1.191.1 SystemExceptions.WrongArgumentCount: accessing ------------------------------------------------------ description @@ -2578,7 +3511,7 @@  File: gst-base.info, Node: SystemExceptions.WrongClass, Next: SystemExceptions.WrongMessageSent, Prev: SystemExceptions.WrongArgumentCount, Up: Base classes -1.187 SystemExceptions.WrongClass +1.192 SystemExceptions.WrongClass ================================= Defined in namespace Smalltalk.SystemExceptions @@ -2596,7 +3529,7 @@  File: gst-base.info, Node: SystemExceptions.WrongClass class-signaling, Next: SystemExceptions.WrongClass-accessing, Up: SystemExceptions.WrongClass -1.187.1 SystemExceptions.WrongClass class: signaling +1.192.1 SystemExceptions.WrongClass class: signaling ---------------------------------------------------- signalOn: anObject mustBe: aClassOrArray @@ -2611,7 +3544,7 @@  File: gst-base.info, Node: SystemExceptions.WrongClass-accessing, Prev: SystemExceptions.WrongClass class-signaling, Up: SystemExceptions.WrongClass -1.187.2 SystemExceptions.WrongClass: accessing +1.192.2 SystemExceptions.WrongClass: accessing ---------------------------------------------- description @@ -2634,7 +3567,7 @@  File: gst-base.info, Node: SystemExceptions.WrongMessageSent, Next: TextCollector, Prev: SystemExceptions.WrongClass, Up: Base classes -1.188 SystemExceptions.WrongMessageSent +1.193 SystemExceptions.WrongMessageSent ======================================= Defined in namespace Smalltalk.SystemExceptions @@ -2652,7 +3585,7 @@  File: gst-base.info, Node: SystemExceptions.WrongMessageSent class-signaling, Next: SystemExceptions.WrongMessageSent-accessing, Up: SystemExceptions.WrongMessageSent -1.188.1 SystemExceptions.WrongMessageSent class: signaling +1.193.1 SystemExceptions.WrongMessageSent class: signaling ---------------------------------------------------------- signalOn: selector useInstead: aSymbol @@ -2663,7 +3596,7 @@  File: gst-base.info, Node: SystemExceptions.WrongMessageSent-accessing, Prev: SystemExceptions.WrongMessageSent class-signaling, Up: SystemExceptions.WrongMessageSent -1.188.2 SystemExceptions.WrongMessageSent: accessing +1.193.2 SystemExceptions.WrongMessageSent: accessing ---------------------------------------------------- messageText @@ -2685,7 +3618,7 @@  File: gst-base.info, Node: TextCollector, Next: Time, Prev: SystemExceptions.WrongMessageSent, Up: Base classes -1.189 TextCollector +1.194 TextCollector =================== Defined in namespace Smalltalk @@ -2707,7 +3640,7 @@  File: gst-base.info, Node: TextCollector class-accessing, Next: TextCollector-accessing, Up: TextCollector -1.189.1 TextCollector class: accessing +1.194.1 TextCollector class: accessing -------------------------------------- message: receiverToSelectorAssociation @@ -2723,7 +3656,7 @@  File: gst-base.info, Node: TextCollector-accessing, Next: TextCollector-printing, Prev: TextCollector class-accessing, Up: TextCollector -1.189.2 TextCollector: accessing +1.194.2 TextCollector: accessing -------------------------------- cr @@ -2755,7 +3688,7 @@  File: gst-base.info, Node: TextCollector-printing, Next: TextCollector-set up, Prev: TextCollector-accessing, Up: TextCollector -1.189.3 TextCollector: printing +1.194.3 TextCollector: printing ------------------------------- print: anObject @@ -2768,7 +3701,7 @@  File: gst-base.info, Node: TextCollector-set up, Next: TextCollector-storing, Prev: TextCollector-printing, Up: TextCollector -1.189.4 TextCollector: set up +1.194.4 TextCollector: set up ----------------------------- message @@ -2785,7 +3718,7 @@  File: gst-base.info, Node: TextCollector-storing, Prev: TextCollector-set up, Up: TextCollector -1.189.5 TextCollector: storing +1.194.5 TextCollector: storing ------------------------------ store: anObject @@ -2798,7 +3731,7 @@  File: gst-base.info, Node: Time, Next: True, Prev: TextCollector, Up: Base classes -1.190 Time +1.195 Time ========== Defined in namespace Smalltalk @@ -2824,7 +3757,7 @@  File: gst-base.info, Node: Time class-basic (UTC), Next: Time class-builtins, Up: Time -1.190.1 Time class: basic (UTC) +1.195.1 Time class: basic (UTC) ------------------------------- midnight @@ -2844,7 +3777,7 @@  File: gst-base.info, Node: Time class-builtins, Next: Time class-clocks, Prev: Time class-basic (UTC), Up: Time -1.190.2 Time class: builtins +1.195.2 Time class: builtins ---------------------------- primMillisecondClock @@ -2872,7 +3805,7 @@  File: gst-base.info, Node: Time class-clocks, Next: Time class-initialization, Prev: Time class-builtins, Up: Time -1.190.3 Time class: clocks +1.195.3 Time class: clocks -------------------------- millisecondClock @@ -2894,7 +3827,7 @@  File: gst-base.info, Node: Time class-initialization, Next: Time class-instance creation, Prev: Time class-clocks, Up: Time -1.190.4 Time class: initialization +1.195.4 Time class: initialization ---------------------------------- initialize @@ -2907,7 +3840,7 @@  File: gst-base.info, Node: Time class-instance creation, Next: Time-accessing (ANSI for DateAndTimes), Prev: Time class-initialization, Up: Time -1.190.5 Time class: instance creation +1.195.5 Time class: instance creation ------------------------------------- fromSeconds: secondCount @@ -2940,7 +3873,7 @@  File: gst-base.info, Node: Time-accessing (ANSI for DateAndTimes), Next: Time-accessing (non ANSI & for Durations), Prev: Time class-instance creation, Up: Time -1.190.6 Time: accessing (ANSI for DateAndTimes) +1.195.6 Time: accessing (ANSI for DateAndTimes) ----------------------------------------------- hour @@ -2962,7 +3895,7 @@  File: gst-base.info, Node: Time-accessing (non ANSI & for Durations), Next: Time-arithmetic, Prev: Time-accessing (ANSI for DateAndTimes), Up: Time -1.190.7 Time: accessing (non ANSI & for Durations) +1.195.7 Time: accessing (non ANSI & for Durations) -------------------------------------------------- asSeconds @@ -2981,7 +3914,7 @@  File: gst-base.info, Node: Time-arithmetic, Next: Time-comparing, Prev: Time-accessing (non ANSI & for Durations), Up: Time -1.190.8 Time: arithmetic +1.195.8 Time: arithmetic ------------------------ addSeconds: timeAmount @@ -3002,7 +3935,7 @@  File: gst-base.info, Node: Time-comparing, Prev: Time-arithmetic, Up: Time -1.190.9 Time: comparing +1.195.9 Time: comparing ----------------------- < aTime @@ -3018,7 +3951,7 @@  File: gst-base.info, Node: True, Next: UndefinedObject, Prev: Time, Up: Base classes -1.191 True +1.196 True ========== Defined in namespace Smalltalk @@ -3036,7 +3969,7 @@  File: gst-base.info, Node: True-basic, Next: True-C hacks, Up: True -1.191.1 True: basic +1.196.1 True: basic ------------------- & aBoolean @@ -3080,7 +4013,7 @@  File: gst-base.info, Node: True-C hacks, Next: True-printing, Prev: True-basic, Up: True -1.191.2 True: C hacks +1.196.2 True: C hacks --------------------- asCBooleanValue @@ -3090,7 +4023,7 @@  File: gst-base.info, Node: True-printing, Prev: True-C hacks, Up: True -1.191.3 True: printing +1.196.3 True: printing ---------------------- printOn: aStream @@ -3100,7 +4033,7 @@  File: gst-base.info, Node: UndefinedObject, Next: UnicodeCharacter, Prev: True, Up: Base classes -1.192 UndefinedObject +1.197 UndefinedObject ===================== Defined in namespace Smalltalk @@ -3123,7 +4056,7 @@  File: gst-base.info, Node: UndefinedObject-basic, Next: UndefinedObject-class creation - alternative, Up: UndefinedObject -1.192.1 UndefinedObject: basic +1.197.1 UndefinedObject: basic ------------------------------ copy @@ -3139,7 +4072,7 @@  File: gst-base.info, Node: UndefinedObject-class creation - alternative, Next: UndefinedObject-class polymorphism, Prev: UndefinedObject-basic, Up: UndefinedObject -1.192.2 UndefinedObject: class creation - alternative +1.197.2 UndefinedObject: class creation - alternative ----------------------------------------------------- subclass: classNameString classInstanceVariableNames: stringClassInstVarNames instanceVariableNames: stringInstVarNames classVariableNames: stringOfClassVarNames poolDictionaries: stringOfPoolNames @@ -3170,7 +4103,7 @@  File: gst-base.info, Node: UndefinedObject-class polymorphism, Next: UndefinedObject-CObject interoperability, Prev: UndefinedObject-class creation - alternative, Up: UndefinedObject -1.192.3 UndefinedObject: class polymorphism +1.197.3 UndefinedObject: class polymorphism ------------------------------------------- allSubclasses @@ -3232,7 +4165,7 @@  File: gst-base.info, Node: UndefinedObject-CObject interoperability, Next: UndefinedObject-dependents access, Prev: UndefinedObject-class polymorphism, Up: UndefinedObject -1.192.4 UndefinedObject: CObject interoperability +1.197.4 UndefinedObject: CObject interoperability ------------------------------------------------- free @@ -3246,7 +4179,7 @@  File: gst-base.info, Node: UndefinedObject-dependents access, Next: UndefinedObject-printing, Prev: UndefinedObject-CObject interoperability, Up: UndefinedObject -1.192.5 UndefinedObject: dependents access +1.197.5 UndefinedObject: dependents access ------------------------------------------ addDependent: ignored @@ -3259,7 +4192,7 @@  File: gst-base.info, Node: UndefinedObject-printing, Next: UndefinedObject-storing, Prev: UndefinedObject-dependents access, Up: UndefinedObject -1.192.6 UndefinedObject: printing +1.197.6 UndefinedObject: printing --------------------------------- printOn: aStream @@ -3274,7 +4207,7 @@  File: gst-base.info, Node: UndefinedObject-storing, Next: UndefinedObject-testing, Prev: UndefinedObject-printing, Up: UndefinedObject -1.192.7 UndefinedObject: storing +1.197.7 UndefinedObject: storing -------------------------------- isLiteralObject @@ -3290,7 +4223,7 @@  File: gst-base.info, Node: UndefinedObject-testing, Prev: UndefinedObject-storing, Up: UndefinedObject -1.192.8 UndefinedObject: testing +1.197.8 UndefinedObject: testing -------------------------------- ifNil: nilBlock @@ -3320,7 +4253,7 @@  File: gst-base.info, Node: UnicodeCharacter, Next: UnicodeString, Prev: UndefinedObject, Up: Base classes -1.193 UnicodeCharacter +1.198 UnicodeCharacter ====================== Defined in namespace Smalltalk @@ -3336,11 +4269,12 @@ * Menu: * UnicodeCharacter class-built ins:: (class) +* UnicodeCharacter-coercion methods:: (instance)  -File: gst-base.info, Node: UnicodeCharacter class-built ins, Up: UnicodeCharacter +File: gst-base.info, Node: UnicodeCharacter class-built ins, Next: UnicodeCharacter-coercion methods, Up: UnicodeCharacter -1.193.1 UnicodeCharacter class: built ins +1.198.1 UnicodeCharacter class: built ins ----------------------------------------- method @@ -3356,9 +4290,19 @@  +File: gst-base.info, Node: UnicodeCharacter-coercion methods, Prev: UnicodeCharacter class-built ins, Up: UnicodeCharacter + +1.198.2 UnicodeCharacter: coercion methods +------------------------------------------ + +* aNumber + Returns a String with aNumber occurrences of the receiver. + + + File: gst-base.info, Node: UnicodeString, Next: ValueAdaptor, Prev: UnicodeCharacter, Up: Base classes -1.194 UnicodeString +1.199 UnicodeString =================== Defined in namespace Smalltalk @@ -3378,7 +4322,7 @@  File: gst-base.info, Node: UnicodeString class-converting, Next: UnicodeString class-multibyte encodings, Up: UnicodeString -1.194.1 UnicodeString class: converting +1.199.1 UnicodeString class: converting --------------------------------------- fromString: aString @@ -3390,7 +4334,7 @@  File: gst-base.info, Node: UnicodeString class-multibyte encodings, Next: UnicodeString-built-ins, Prev: UnicodeString class-converting, Up: UnicodeString -1.194.2 UnicodeString class: multibyte encodings +1.199.2 UnicodeString class: multibyte encodings ------------------------------------------------ defaultEncoding @@ -3405,7 +4349,7 @@  File: gst-base.info, Node: UnicodeString-built-ins, Next: UnicodeString-converting, Prev: UnicodeString class-multibyte encodings, Up: UnicodeString -1.194.3 UnicodeString: built-ins +1.199.3 UnicodeString: built-ins -------------------------------- hash @@ -3415,7 +4359,7 @@  File: gst-base.info, Node: UnicodeString-converting, Next: UnicodeString-multibyte encodings, Prev: UnicodeString-built-ins, Up: UnicodeString -1.194.4 UnicodeString: converting +1.199.4 UnicodeString: converting --------------------------------- asString @@ -3440,7 +4384,7 @@  File: gst-base.info, Node: UnicodeString-multibyte encodings, Prev: UnicodeString-converting, Up: UnicodeString -1.194.5 UnicodeString: multibyte encodings +1.199.5 UnicodeString: multibyte encodings ------------------------------------------ encoding @@ -3456,7 +4400,7 @@  File: gst-base.info, Node: ValueAdaptor, Next: ValueHolder, Prev: UnicodeString, Up: Base classes -1.195 ValueAdaptor +1.200 ValueAdaptor ================== Defined in namespace Smalltalk @@ -3474,7 +4418,7 @@  File: gst-base.info, Node: ValueAdaptor class-creating instances, Next: ValueAdaptor-accessing, Up: ValueAdaptor -1.195.1 ValueAdaptor class: creating instances +1.200.1 ValueAdaptor class: creating instances ---------------------------------------------- new @@ -3485,7 +4429,7 @@  File: gst-base.info, Node: ValueAdaptor-accessing, Next: ValueAdaptor-printing, Prev: ValueAdaptor class-creating instances, Up: ValueAdaptor -1.195.2 ValueAdaptor: accessing +1.200.2 ValueAdaptor: accessing ------------------------------- value @@ -3500,7 +4444,7 @@  File: gst-base.info, Node: ValueAdaptor-printing, Prev: ValueAdaptor-accessing, Up: ValueAdaptor -1.195.3 ValueAdaptor: printing +1.200.3 ValueAdaptor: printing ------------------------------ printOn: aStream @@ -3510,7 +4454,7 @@  File: gst-base.info, Node: ValueHolder, Next: VariableBinding, Prev: ValueAdaptor, Up: Base classes -1.196 ValueHolder +1.201 ValueHolder ================= Defined in namespace Smalltalk @@ -3530,7 +4474,7 @@  File: gst-base.info, Node: ValueHolder class-creating instances, Next: ValueHolder-accessing, Up: ValueHolder -1.196.1 ValueHolder class: creating instances +1.201.1 ValueHolder class: creating instances --------------------------------------------- new @@ -3546,7 +4490,7 @@  File: gst-base.info, Node: ValueHolder-accessing, Next: ValueHolder-initializing, Prev: ValueHolder class-creating instances, Up: ValueHolder -1.196.2 ValueHolder: accessing +1.201.2 ValueHolder: accessing ------------------------------ value @@ -3559,7 +4503,7 @@  File: gst-base.info, Node: ValueHolder-initializing, Prev: ValueHolder-accessing, Up: ValueHolder -1.196.3 ValueHolder: initializing +1.201.3 ValueHolder: initializing --------------------------------- initialize @@ -3569,7 +4513,7 @@  File: gst-base.info, Node: VariableBinding, Next: VersionableObjectProxy, Prev: ValueHolder, Up: Base classes -1.197 VariableBinding +1.202 VariableBinding ===================== Defined in namespace Smalltalk @@ -3589,7 +4533,7 @@  File: gst-base.info, Node: VariableBinding-printing, Next: VariableBinding-saving and loading, Up: VariableBinding -1.197.1 VariableBinding: printing +1.202.1 VariableBinding: printing --------------------------------- path @@ -3602,7 +4546,7 @@  File: gst-base.info, Node: VariableBinding-saving and loading, Next: VariableBinding-storing, Prev: VariableBinding-printing, Up: VariableBinding -1.197.2 VariableBinding: saving and loading +1.202.2 VariableBinding: saving and loading ------------------------------------------- to @@ -3616,7 +4560,7 @@  File: gst-base.info, Node: VariableBinding-storing, Next: VariableBinding-testing, Prev: VariableBinding-saving and loading, Up: VariableBinding -1.197.3 VariableBinding: storing +1.202.3 VariableBinding: storing -------------------------------- isLiteralObject @@ -3632,7 +4576,7 @@  File: gst-base.info, Node: VariableBinding-testing, Prev: VariableBinding-storing, Up: VariableBinding -1.197.4 VariableBinding: testing +1.202.4 VariableBinding: testing -------------------------------- isDefined @@ -3641,9 +4585,9 @@  -File: gst-base.info, Node: VersionableObjectProxy, Next: VFS.ArchiveFileHandler, Prev: VariableBinding, Up: Base classes +File: gst-base.info, Node: VersionableObjectProxy, Next: VFS.ArchiveFile, Prev: VariableBinding, Up: Base classes -1.198 VersionableObjectProxy +1.203 VersionableObjectProxy ============================ Defined in namespace Smalltalk @@ -3666,7 +4610,7 @@  File: gst-base.info, Node: VersionableObjectProxy class-saving and restoring, Next: VersionableObjectProxy-saving and restoring, Up: VersionableObjectProxy -1.198.1 VersionableObjectProxy class: saving and restoring +1.203.1 VersionableObjectProxy class: saving and restoring ---------------------------------------------------------- to @@ -3688,7 +4632,7 @@  File: gst-base.info, Node: VersionableObjectProxy-saving and restoring, Prev: VersionableObjectProxy class-saving and restoring, Up: VersionableObjectProxy -1.198.2 VersionableObjectProxy: saving and restoring +1.203.2 VersionableObjectProxy: saving and restoring ---------------------------------------------------- dumpTo: anObjectDumper @@ -3696,69 +4640,74 @@  -File: gst-base.info, Node: VFS.ArchiveFileHandler, Next: VFS.ArchiveMemberHandler, Prev: VersionableObjectProxy, Up: Base classes +File: gst-base.info, Node: VFS.ArchiveFile, Next: VFS.ArchiveMember, Prev: VersionableObjectProxy, Up: Base classes -1.199 VFS.ArchiveFileHandler -============================ +1.204 VFS.ArchiveFile +===================== Defined in namespace Smalltalk.VFS -Superclass: VFS.FileHandlerWrapper +Superclass: VFS.FileWrapper Category: Streams-Files - ArchiveFileHandler handles virtual filesystems that have a - directory structure of their own. The directories and files in - the archive are instances of ArchiveMemberHandler, but the - functionality resides entirely in ArchiveFileHandler because the - members will still ask the archive to get directory information on - them, to extract them to a real file, and so on. + ArchiveFile handles virtual filesystems that have a directory + structure of their own. The directories and files in the archive + are instances of ArchiveMember, but the functionality resides + entirely in ArchiveFile because the members will still ask the + archive to get directory information on them, to extract them to a + real file, and so on. * Menu: -* VFS.ArchiveFileHandler-ArchiveMemberHandler protocol:: (instance) -* VFS.ArchiveFileHandler-directory operations:: (instance) -* VFS.ArchiveFileHandler-querying:: (instance) -* VFS.ArchiveFileHandler-TmpFileArchiveMemberHandler protocol:: (instance) +* VFS.ArchiveFile-ArchiveMember protocol:: (instance) +* VFS.ArchiveFile-directory operations:: (instance) +* VFS.ArchiveFile-querying:: (instance) +* VFS.ArchiveFile-still unclassified:: (instance) +* VFS.ArchiveFile-TmpFileArchiveMember protocol:: (instance)  -File: gst-base.info, Node: VFS.ArchiveFileHandler-ArchiveMemberHandler protocol, Next: VFS.ArchiveFileHandler-directory operations, Up: VFS.ArchiveFileHandler +File: gst-base.info, Node: VFS.ArchiveFile-ArchiveMember protocol, Next: VFS.ArchiveFile-directory operations, Up: VFS.ArchiveFile -1.199.1 VFS.ArchiveFileHandler: ArchiveMemberHandler protocol -------------------------------------------------------------- +1.204.1 VFS.ArchiveFile: ArchiveMember protocol +----------------------------------------------- -fillMember: anArchiveMemberHandler - Extract the information on anArchiveMemberHandler. Answer false - if it actually does not exist in the archive; otherwise, answer - true after having told anArchiveMemberHandler about them by - sending #size:stCtime:stMtime:stAtime:isDirectory: to it. +fillMember: anArchiveMember + Extract the information on anArchiveMember. Answer false if it + actually does not exist in the archive; otherwise, answer true + after having told anArchiveMember about them by sending + #size:stCtime:stMtime:stAtime:isDirectory: to it. -member: anArchiveMemberHandler do: aBlock +member: anArchiveMember do: aBlock Evaluate aBlock once for each file in the directory represented by - anArchiveMemberHandler, passing its name. + anArchiveMember, passing its name. -member: anArchiveMemberHandler mode: bits - Set the permission bits for the file in anArchiveMemberHandler. +member: anArchiveMember mode: bits + Set the permission bits for the file in anArchiveMember. refresh Extract the directory listing from the archive -removeMember: anArchiveMemberHandler - Remove the member represented by anArchiveMemberHandler. +removeMember: anArchiveMember + Remove the member represented by anArchiveMember. -updateMember: anArchiveMemberHandler - Update the member represented by anArchiveMemberHandler by copying - the file into which it was extracted back to the archive. +updateMember: anArchiveMember + Update the member represented by anArchiveMember by copying the + file into which it was extracted back to the archive.  -File: gst-base.info, Node: VFS.ArchiveFileHandler-directory operations, Next: VFS.ArchiveFileHandler-querying, Prev: VFS.ArchiveFileHandler-ArchiveMemberHandler protocol, Up: VFS.ArchiveFileHandler +File: gst-base.info, Node: VFS.ArchiveFile-directory operations, Next: VFS.ArchiveFile-querying, Prev: VFS.ArchiveFile-ArchiveMember protocol, Up: VFS.ArchiveFile -1.199.2 VFS.ArchiveFileHandler: directory operations ----------------------------------------------------- +1.204.2 VFS.ArchiveFile: directory operations +--------------------------------------------- at: aName - Answer a VFSHandler for a file named `aName' residing in the + Answer a FilePath for a file named `aName' residing in the directory represented by the receiver. -do: aBlock +nameAt: aString + Answer a FilePath for a file named `aName' residing in the + directory represented by the receiver. + +namesDo: aBlock Evaluate aBlock once for each file in the directory represented by the receiver, passing its name. @@ -3768,10 +4717,10 @@  -File: gst-base.info, Node: VFS.ArchiveFileHandler-querying, Next: VFS.ArchiveFileHandler-TmpFileArchiveMemberHandler protocol, Prev: VFS.ArchiveFileHandler-directory operations, Up: VFS.ArchiveFileHandler +File: gst-base.info, Node: VFS.ArchiveFile-querying, Next: VFS.ArchiveFile-still unclassified, Prev: VFS.ArchiveFile-directory operations, Up: VFS.ArchiveFile -1.199.3 VFS.ArchiveFileHandler: querying ----------------------------------------- +1.204.3 VFS.ArchiveFile: querying +--------------------------------- isAccessible Answer whether a directory with the name contained in the receiver @@ -3782,46 +4731,66 @@  -File: gst-base.info, Node: VFS.ArchiveFileHandler-TmpFileArchiveMemberHandler protocol, Prev: VFS.ArchiveFileHandler-querying, Up: VFS.ArchiveFileHandler +File: gst-base.info, Node: VFS.ArchiveFile-still unclassified, Next: VFS.ArchiveFile-TmpFileArchiveMember protocol, Prev: VFS.ArchiveFile-querying, Up: VFS.ArchiveFile + +1.204.4 VFS.ArchiveFile: still unclassified +------------------------------------------- + +displayOn: aStream + Print a representation of the file identified by the receiver. + + + +File: gst-base.info, Node: VFS.ArchiveFile-TmpFileArchiveMember protocol, Prev: VFS.ArchiveFile-still unclassified, Up: VFS.ArchiveFile -1.199.4 VFS.ArchiveFileHandler: TmpFileArchiveMemberHandler protocol --------------------------------------------------------------------- +1.204.5 VFS.ArchiveFile: TmpFileArchiveMember protocol +------------------------------------------------------ -extractMember: anArchiveMemberHandler - Extract the contents of anArchiveMemberHandler into a file that - resides on disk, and answer the name of the file. +extractMember: anArchiveMember + Extract the contents of anArchiveMember into a file that resides + on disk, and answer the name of the file. -extractMember: anArchiveMemberHandler into: file - Extract the contents of anArchiveMemberHandler into a file that - resides on disk, and answer the name of the file. +extractMember: anArchiveMember into: file + Extract the contents of anArchiveMember into a file that resides + on disk, and answer the name of the file.  -File: gst-base.info, Node: VFS.ArchiveMemberHandler, Next: VFS.CStatStruct, Prev: VFS.ArchiveFileHandler, Up: Base classes +File: gst-base.info, Node: VFS.ArchiveMember, Next: VFS.FileWrapper, Prev: VFS.ArchiveFile, Up: Base classes -1.200 VFS.ArchiveMemberHandler -============================== +1.205 VFS.ArchiveMember +======================= Defined in namespace Smalltalk.VFS -Superclass: VFS.VFSHandler +Superclass: FilePath Category: Streams-Files - TmpFileArchiveMemberHandler is a handler class for members of - archive files that creates temporary files when extracting files - from an archive. + TmpFileArchiveMember is a handler class for members of archive + files that creates temporary files when extracting files from an + archive. * Menu: -* VFS.ArchiveMemberHandler-accessing:: (instance) -* VFS.ArchiveMemberHandler-directory operations:: (instance) -* VFS.ArchiveMemberHandler-file operations:: (instance) -* VFS.ArchiveMemberHandler-initializing:: (instance) -* VFS.ArchiveMemberHandler-testing:: (instance) +* VFS.ArchiveMember-accessing:: (instance) +* VFS.ArchiveMember-basic:: (instance) +* VFS.ArchiveMember-delegation:: (instance) +* VFS.ArchiveMember-directory operations:: (instance) +* VFS.ArchiveMember-file operations:: (instance) +* VFS.ArchiveMember-initializing:: (instance) +* VFS.ArchiveMember-still unclassified:: (instance) +* VFS.ArchiveMember-testing:: (instance)  -File: gst-base.info, Node: VFS.ArchiveMemberHandler-accessing, Next: VFS.ArchiveMemberHandler-directory operations, Up: VFS.ArchiveMemberHandler +File: gst-base.info, Node: VFS.ArchiveMember-accessing, Next: VFS.ArchiveMember-basic, Up: VFS.ArchiveMember -1.200.1 VFS.ArchiveMemberHandler: accessing -------------------------------------------- +1.205.1 VFS.ArchiveMember: accessing +------------------------------------ + +archive + Answer the archive of which the receiver is a member. + +asString + Answer the name of the file identified by the receiver as answered + by File>>#name. creationTime Answer the creation time of the file identified by the receiver. @@ -3829,10 +4798,6 @@ time (the `last change time' has to do with permissions, ownership and the like). -fullName - Answer the name of the file identified by the receiver as answered - by File>>#name. - lastAccessTime Answer the last access time of the file identified by the receiver @@ -3852,12 +4817,6 @@ name: aName Set the receiver's file name to aName. -parent - Answer the archive of which the receiver is a member. - -realFileName - Answer `nil'. - refresh Refresh the statistics for the receiver @@ -3866,28 +4825,52 @@  -File: gst-base.info, Node: VFS.ArchiveMemberHandler-directory operations, Next: VFS.ArchiveMemberHandler-file operations, Prev: VFS.ArchiveMemberHandler-accessing, Up: VFS.ArchiveMemberHandler +File: gst-base.info, Node: VFS.ArchiveMember-basic, Next: VFS.ArchiveMember-delegation, Prev: VFS.ArchiveMember-accessing, Up: VFS.ArchiveMember -1.200.2 VFS.ArchiveMemberHandler: directory operations ------------------------------------------------------- +1.205.2 VFS.ArchiveMember: basic +-------------------------------- + += aFile + Answer whether the receiver represents the same file as the + receiver. + +hash + Answer a hash value for the receiver. + + + +File: gst-base.info, Node: VFS.ArchiveMember-delegation, Next: VFS.ArchiveMember-directory operations, Prev: VFS.ArchiveMember-basic, Up: VFS.ArchiveMember + +1.205.3 VFS.ArchiveMember: delegation +------------------------------------- + +full + Answer the size of the file identified by the receiver + + + +File: gst-base.info, Node: VFS.ArchiveMember-directory operations, Next: VFS.ArchiveMember-file operations, Prev: VFS.ArchiveMember-delegation, Up: VFS.ArchiveMember + +1.205.4 VFS.ArchiveMember: directory operations +----------------------------------------------- at: aName - Answer a VFSHandler for a file named `aName' residing in the + Answer a FilePath for a file named `aName' residing in the directory represented by the receiver. -createDir: dirName +createDirectory: dirName Create a subdirectory of the receiver, naming it dirName. -do: aBlock +namesDo: aBlock Evaluate aBlock once for each file in the directory represented by the receiver, passing its name.  -File: gst-base.info, Node: VFS.ArchiveMemberHandler-file operations, Next: VFS.ArchiveMemberHandler-initializing, Prev: VFS.ArchiveMemberHandler-directory operations, Up: VFS.ArchiveMemberHandler +File: gst-base.info, Node: VFS.ArchiveMember-file operations, Next: VFS.ArchiveMember-initializing, Prev: VFS.ArchiveMember-directory operations, Up: VFS.ArchiveMember -1.200.3 VFS.ArchiveMemberHandler: file operations -------------------------------------------------- +1.205.5 VFS.ArchiveMember: file operations +------------------------------------------ open: class mode: mode ifFail: aBlock Open the receiver in the given mode (as answered by FileStream's @@ -3904,18 +4887,18 @@  -File: gst-base.info, Node: VFS.ArchiveMemberHandler-initializing, Next: VFS.ArchiveMemberHandler-testing, Prev: VFS.ArchiveMemberHandler-file operations, Up: VFS.ArchiveMemberHandler +File: gst-base.info, Node: VFS.ArchiveMember-initializing, Next: VFS.ArchiveMember-still unclassified, Prev: VFS.ArchiveMember-file operations, Up: VFS.ArchiveMember -1.200.4 VFS.ArchiveMemberHandler: initializing ----------------------------------------------- - -fillFrom: data - Called back by the receiver's parent when the ArchiveMemberHandler - asks for file information. +1.205.6 VFS.ArchiveMember: initializing +--------------------------------------- -parent: anArchiveFileHandler +archive: anArchiveFile Set the archive of which the receiver is a member. +fillFrom: data + Called back by the receiver's archive when the ArchiveMember asks + for file information. + size: bytes stCtime: ctime stMtime: mtime stAtime: atime mode: modeBits Set the file information for the receiver. @@ -3924,10 +4907,27 @@  -File: gst-base.info, Node: VFS.ArchiveMemberHandler-testing, Prev: VFS.ArchiveMemberHandler-initializing, Up: VFS.ArchiveMemberHandler +File: gst-base.info, Node: VFS.ArchiveMember-still unclassified, Next: VFS.ArchiveMember-testing, Prev: VFS.ArchiveMember-initializing, Up: VFS.ArchiveMember -1.200.5 VFS.ArchiveMemberHandler: testing ------------------------------------------ +1.205.7 VFS.ArchiveMember: still unclassified +--------------------------------------------- + +, aName + Answer an object of the same kind as the receiver, whose name is + suffixed with aName. + +displayOn: aStream + Print a representation of the file identified by the receiver. + +isAbsolute + Answer whether the receiver identifies an absolute path. + + + +File: gst-base.info, Node: VFS.ArchiveMember-testing, Prev: VFS.ArchiveMember-still unclassified, Up: VFS.ArchiveMember + +1.205.8 VFS.ArchiveMember: testing +---------------------------------- exists Answer whether a file with the name contained in the receiver does @@ -3949,295 +4949,112 @@ Answer whether a file with the name contained in the receiver does exist and is readable -isWriteable - Answer whether a file with the name contained in the receiver does - exist and is writeable - -mode - Answer the octal permissions for the file. - -mode: mode - Set the octal permissions for the file to be `mode'. - - - -File: gst-base.info, Node: VFS.CStatStruct, Next: VFS.DecodedFileHandler, Prev: VFS.ArchiveMemberHandler, Up: Base classes - -1.201 VFS.CStatStruct -===================== - -Defined in namespace Smalltalk.VFS -Superclass: CStruct -Category: Streams-Files - -* Menu: - -* VFS.CStatStruct class-accessing:: (class) -* VFS.CStatStruct-accessing:: (instance) -* VFS.CStatStruct-debugging:: (instance) - - -File: gst-base.info, Node: VFS.CStatStruct class-accessing, Next: VFS.CStatStruct-accessing, Up: VFS.CStatStruct - -1.201.1 VFS.CStatStruct class: accessing ----------------------------------------- - -alignof - Not commented. - -sizeof - Not commented. - - - -File: gst-base.info, Node: VFS.CStatStruct-accessing, Next: VFS.CStatStruct-debugging, Prev: VFS.CStatStruct class-accessing, Up: VFS.CStatStruct - -1.201.2 VFS.CStatStruct: accessing ----------------------------------- - -alignof - Not commented. - -sizeof - Not commented. - -stAtime - Not commented. - -stCtime - Not commented. - -stMode - Not commented. - -stMtime - Not commented. - -stSize - Not commented. - - - -File: gst-base.info, Node: VFS.CStatStruct-debugging, Prev: VFS.CStatStruct-accessing, Up: VFS.CStatStruct - -1.201.3 VFS.CStatStruct: debugging ----------------------------------- - -inspectSelectorList - Not commented. - - - -File: gst-base.info, Node: VFS.DecodedFileHandler, Next: VFS.FileHandlerWrapper, Prev: VFS.CStatStruct, Up: Base classes - -1.202 VFS.DecodedFileHandler -============================ - -Defined in namespace Smalltalk.VFS -Superclass: VFS.FileHandlerWrapper -Category: Streams-Files - -* Menu: - -* VFS.DecodedFileHandler class-registering:: (class) -* VFS.DecodedFileHandler-files:: (instance) - - -File: gst-base.info, Node: VFS.DecodedFileHandler class-registering, Next: VFS.DecodedFileHandler-files, Up: VFS.DecodedFileHandler - -1.202.1 VFS.DecodedFileHandler class: registering -------------------------------------------------- - -defaultFileTypes - Return the default virtual filesystems and the associated filter - commands. - -fileSystems - Answer the virtual file systems that can be processed by this - subclass. These are #gz (gzip a file), #ugz (uncompress a gzipped - file), #Z (compress a file via Unix compress), #uZ (uncompress a - compressed file), #bz2 (compress a file via bzip2), #ubz2 - (uncompress a file via bzip2), #tar (make a tar archive out of a - directory), #tgz (make a gzipped tar archive out of a directory), - #nop (do nothing, used for testing) and #strings (use the - `strings' utility to extract printable strings from a file). - -fileTypes - Return the valid virtual filesystems and the associated filter - commands. - -priority - Answer the priority for this class (higher number = higher - priority) in case multiple classes implement the same file system. - - - -File: gst-base.info, Node: VFS.DecodedFileHandler-files, Prev: VFS.DecodedFileHandler class-registering, Up: VFS.DecodedFileHandler - -1.202.2 VFS.DecodedFileHandler: files -------------------------------------- - -at: aName - Signal an error, as this can't represent a file container. - -open: class mode: mode ifFail: aBlock - Open the receiver in the given mode (as answered by FileStream's - class constant methods) - -parent: containerFileHandler fsName: aString - Private - Initialize a new object storing the contents of the - virtualFileName file into temporaryFileName. - -realFileName - Answer the real file name which holds the file contents, or nil if - it does not apply. - -release - Release the resources used by the receiver that don't survive when - reloading a snapshot. - - - -File: gst-base.info, Node: VFS.FileHandlerWrapper, Next: VFS.RealFileHandler, Prev: VFS.DecodedFileHandler, Up: Base classes - -1.203 VFS.FileHandlerWrapper -============================ - -Defined in namespace Smalltalk.VFS -Superclass: VFS.VFSHandler -Category: Streams-Files - DecodedFileHandler handles virtual filesystems that take a file - that is on-disk, run a command on it, and then read from the - result. - -* Menu: - -* VFS.FileHandlerWrapper class-instance creation:: (class) -* VFS.FileHandlerWrapper-accessing:: (instance) -* VFS.FileHandlerWrapper-delegation:: (instance) - - -File: gst-base.info, Node: VFS.FileHandlerWrapper class-instance creation, Next: VFS.FileHandlerWrapper-accessing, Up: VFS.FileHandlerWrapper - -1.203.1 VFS.FileHandlerWrapper class: instance creation -------------------------------------------------------- - -vfsFor: parent name: fsName - Create an instance of this class representing the contents of the - given file, under the virtual filesystem fsName. - - - -File: gst-base.info, Node: VFS.FileHandlerWrapper-accessing, Next: VFS.FileHandlerWrapper-delegation, Prev: VFS.FileHandlerWrapper class-instance creation, Up: VFS.FileHandlerWrapper - -1.203.2 VFS.FileHandlerWrapper: accessing ------------------------------------------ - -name - Answer the VFS name for my file. - -parent - Answer `parent'. - -realFileName - Answer the container file containing me. - - - -File: gst-base.info, Node: VFS.FileHandlerWrapper-delegation, Prev: VFS.FileHandlerWrapper-accessing, Up: VFS.FileHandlerWrapper - -1.203.3 VFS.FileHandlerWrapper: delegation ------------------------------------------- - -creationTime - Answer the creation time of the file identified by the receiver. - On some operating systems, this could actually be the last change - time (the `last change time' has to do with permissions, ownership - and the like). - -isExecutable - Answer whether a file with the name contained in the receiver does - exist and is executable - -isReadable - Answer whether a file with the name contained in the receiver does - exist and is readable - -isWriteable - Answer whether a file with the name contained in the receiver does - exist and is writeable - -lastAccessTime - Answer the last access time of the file identified by the receiver - -lastChangeTime - Answer the last change time of the file identified by the receiver - (the `last change time' has to do with permissions, ownership and - the like). On some operating systems, this could actually be the - file creation time. - -lastModifyTime - Answer the last modify time of the file identified by the receiver - (the `last modify time' has to do with the actual file contents). +isSymbolicLink + Answer whether a file with the name contained in the receiver does + exist and identifies a symbolic link. -open: class mode: mode ifFail: aBlock - Open the receiver in the given mode (as answered by FileStream's - class constant methods) +isWriteable + Answer whether a file with the name contained in the receiver does + exist and is writeable -remove - Remove the file with the given path name +mode + Answer the octal permissions for the file. -size - Answer the size of the file identified by the receiver +mode: mode + Set the octal permissions for the file to be `mode'.  -File: gst-base.info, Node: VFS.RealFileHandler, Next: VFS.TmpFileArchiveMemberHandler, Prev: VFS.FileHandlerWrapper, Up: Base classes +File: gst-base.info, Node: VFS.FileWrapper, Next: VFS.StoredZipMember, Prev: VFS.ArchiveMember, Up: Base classes -1.204 VFS.RealFileHandler -========================= +1.206 VFS.FileWrapper +===================== Defined in namespace Smalltalk.VFS -Superclass: VFS.VFSHandler +Superclass: FilePath Category: Streams-Files - RealFileHandler is an handler for files that are on disk, as well - as for virtual files that end up being on disk when they are - opened for the first time. + FileWrapper gives information for virtual files that refer to a + real file on disk. * Menu: -* VFS.RealFileHandler class-C call-outs:: (class) -* VFS.RealFileHandler class-initialization:: (class) -* VFS.RealFileHandler-accessing:: (instance) -* VFS.RealFileHandler-directory operations:: (instance) -* VFS.RealFileHandler-file operations:: (instance) -* VFS.RealFileHandler-testing:: (instance) +* VFS.FileWrapper class-initializing:: (class) +* VFS.FileWrapper class-instance creation:: (class) +* VFS.FileWrapper-accessing:: (instance) +* VFS.FileWrapper-basic:: (instance) +* VFS.FileWrapper-delegation:: (instance) +* VFS.FileWrapper-enumerating:: (instance) +* VFS.FileWrapper-file operations:: (instance) +* VFS.FileWrapper-testing:: (instance)  -File: gst-base.info, Node: VFS.RealFileHandler class-C call-outs, Next: VFS.RealFileHandler class-initialization, Up: VFS.RealFileHandler +File: gst-base.info, Node: VFS.FileWrapper class-initializing, Next: VFS.FileWrapper class-instance creation, Up: VFS.FileWrapper -1.204.1 VFS.RealFileHandler class: C call-outs ----------------------------------------------- +1.206.1 VFS.FileWrapper class: initializing +------------------------------------------- -working - Answer the working directory. +initialize + Register the receiver with ObjectMemory + +update: aspect + Private - Remove the files before quitting, and register the + virtual filesystems specified by the subclasses upon image load.  -File: gst-base.info, Node: VFS.RealFileHandler class-initialization, Next: VFS.RealFileHandler-accessing, Prev: VFS.RealFileHandler class-C call-outs, Up: VFS.RealFileHandler +File: gst-base.info, Node: VFS.FileWrapper class-instance creation, Next: VFS.FileWrapper-accessing, Prev: VFS.FileWrapper class-initializing, Up: VFS.FileWrapper -1.204.2 VFS.RealFileHandler class: initialization -------------------------------------------------- +1.206.2 VFS.FileWrapper class: instance creation +------------------------------------------------ -initialize - Initialize the receiver's class variables +on: file + Create an instance of this class representing the contents of the + given file, under the virtual filesystem fsName.  -File: gst-base.info, Node: VFS.RealFileHandler-accessing, Next: VFS.RealFileHandler-directory operations, Prev: VFS.RealFileHandler class-initialization, Up: VFS.RealFileHandler +File: gst-base.info, Node: VFS.FileWrapper-accessing, Next: VFS.FileWrapper-basic, Prev: VFS.FileWrapper class-instance creation, Up: VFS.FileWrapper -1.204.3 VFS.RealFileHandler: accessing --------------------------------------- +1.206.3 VFS.FileWrapper: accessing +---------------------------------- + +asString + Answer the string representation of the receiver's path. + +at: aName + Answer a File or Directory object as appropriate for a file named + 'aName' in the directory represented by the receiver. + +lastAccessTime: accessDateTime lastModifyTime: modifyDateTime + Update the timestamps of the file corresponding to the receiver, + to be accessDateTime and modifyDateTime. + +name + Answer the full path to the receiver. + +pathTo: destName + Compute the relative path from the receiver to destName. + + + +File: gst-base.info, Node: VFS.FileWrapper-basic, Next: VFS.FileWrapper-delegation, Prev: VFS.FileWrapper-accessing, Up: VFS.FileWrapper + +1.206.4 VFS.FileWrapper: basic +------------------------------ + += aFile + Answer whether the receiver represents the same file as the + receiver. + +hash + Answer a hash value for the receiver. + + + +File: gst-base.info, Node: VFS.FileWrapper-delegation, Next: VFS.FileWrapper-enumerating, Prev: VFS.FileWrapper-basic, Up: VFS.FileWrapper + +1.206.5 VFS.FileWrapper: delegation +----------------------------------- creationTime Answer the creation time of the file identified by the receiver. @@ -4245,14 +5062,20 @@ time (the `last change time' has to do with permissions, ownership and the like). -finalize - Free the statistics for the receiver +full + Answer the size of the file identified by the receiver -isDirectory - Answer whether the file is a directory. +isExecutable + Answer whether a file with the name contained in the receiver does + exist and is executable -isSymbolicLink - Answer whether the file is a symbolic link. +isReadable + Answer whether a file with the name contained in the receiver does + exist and is readable + +isWriteable + Answer whether a file with the name contained in the receiver does + exist and is writeable lastAccessTime Answer the last access time of the file identified by the receiver @@ -4268,337 +5091,222 @@ (the `last modify time' has to do with the actual file contents). mode - Answer the octal permissions for the file. - -mode: mode - Set the octal permissions for the file to be `mode'. + Answer the permission bits for the file identified by the receiver -name - Answer the name of the file identified by the receiver - -name: aName - Private - Initialize the receiver's instance variables +mode: anInteger + Answer the permission bits for the file identified by the receiver -realFileName - Answer the real file name for the file identified by the receiver +open: class mode: mode ifFail: aBlock + Open the receiver in the given mode (as answered by FileStream's + class constant methods) -refresh - Refresh the statistics for the receiver +remove + Remove the file with the given path name size Answer the size of the file identified by the receiver  -File: gst-base.info, Node: VFS.RealFileHandler-directory operations, Next: VFS.RealFileHandler-file operations, Prev: VFS.RealFileHandler-accessing, Up: VFS.RealFileHandler - -1.204.4 VFS.RealFileHandler: directory operations -------------------------------------------------- +File: gst-base.info, Node: VFS.FileWrapper-enumerating, Next: VFS.FileWrapper-file operations, Prev: VFS.FileWrapper-delegation, Up: VFS.FileWrapper -createDir: dirName - Create a subdirectory of the receiver, naming it dirName. +1.206.6 VFS.FileWrapper: enumerating +------------------------------------ -do: aBlock +namesDo: aBlock Evaluate aBlock once for each file in the directory represented by - the receiver, passing its name. aBlock should not return. + the receiver, passing its name.  -File: gst-base.info, Node: VFS.RealFileHandler-file operations, Next: VFS.RealFileHandler-testing, Prev: VFS.RealFileHandler-directory operations, Up: VFS.RealFileHandler - -1.204.5 VFS.RealFileHandler: file operations --------------------------------------------- +File: gst-base.info, Node: VFS.FileWrapper-file operations, Next: VFS.FileWrapper-testing, Prev: VFS.FileWrapper-enumerating, Up: VFS.FileWrapper -lastAccessTime: accessDateTime lastModifyTime: modifyDateTime - Set the receiver's timestamps to be accessDateTime and - modifyDateTime. +1.206.7 VFS.FileWrapper: file operations +---------------------------------------- -open: class mode: mode ifFail: aBlock - Open the receiver in the given mode (as answered by FileStream's - class constant methods) +pathFrom: dirName + Compute the relative path from the directory dirName to the + receiver -remove - Remove the file with the given path name +renameTo: newName + Rename the file identified by the receiver to newName -renameTo: newFileName - Rename the file with the given path name to newFileName +symlinkAs: destName + Create destName as a symbolic link of the receiver. The + appropriate relative path is computed automatically. symlinkFrom: srcName - Create the receiver as a symlink from path destName + Create the receiver as a symbolic link from srcName (relative to + the path of the receiver).  -File: gst-base.info, Node: VFS.RealFileHandler-testing, Prev: VFS.RealFileHandler-file operations, Up: VFS.RealFileHandler +File: gst-base.info, Node: VFS.FileWrapper-testing, Prev: VFS.FileWrapper-file operations, Up: VFS.FileWrapper -1.204.6 VFS.RealFileHandler: testing ------------------------------------- +1.206.8 VFS.FileWrapper: testing +-------------------------------- exists Answer whether a file with the name contained in the receiver does exist. -isExecutable - Answer whether a file with the name contained in the receiver does - exist and is executable +isAbsolute + Answer whether the receiver identifies an absolute path. -isReadable +isAccessible + Answer whether a directory with the name contained in the receiver + does exist and can be accessed + +isDirectory Answer whether a file with the name contained in the receiver does - exist and is readable + exist identifies a directory. -isWriteable +isSymbolicLink Answer whether a file with the name contained in the receiver does - exist and is writeable + exist and identifies a symbolic link.  -File: gst-base.info, Node: VFS.TmpFileArchiveMemberHandler, Next: VFS.VFSHandler, Prev: VFS.RealFileHandler, Up: Base classes +File: gst-base.info, Node: VFS.StoredZipMember, Next: VFS.TmpFileArchiveMember, Prev: VFS.FileWrapper, Up: Base classes -1.205 VFS.TmpFileArchiveMemberHandler -===================================== +1.207 VFS.StoredZipMember +========================= Defined in namespace Smalltalk.VFS -Superclass: VFS.ArchiveMemberHandler +Superclass: VFS.TmpFileArchiveMember Category: Streams-Files + ArchiveMember is the handler class for stored ZIP archive members, + which are optimized. * Menu: -* VFS.TmpFileArchiveMemberHandler-directory operations:: (instance) -* VFS.TmpFileArchiveMemberHandler-finalization:: (instance) +* VFS.StoredZipMember-accessing:: (instance) +* VFS.StoredZipMember-opening:: (instance)  -File: gst-base.info, Node: VFS.TmpFileArchiveMemberHandler-directory operations, Next: VFS.TmpFileArchiveMemberHandler-finalization, Up: VFS.TmpFileArchiveMemberHandler +File: gst-base.info, Node: VFS.StoredZipMember-accessing, Next: VFS.StoredZipMember-opening, Up: VFS.StoredZipMember -1.205.1 VFS.TmpFileArchiveMemberHandler: directory operations -------------------------------------------------------------- +1.207.1 VFS.StoredZipMember: accessing +-------------------------------------- -open: class mode: mode ifFail: aBlock - Open the receiver in the given mode (as answered by FileStream's - class constant methods) +offset + Answer `offset'. -realFileName - Answer the real file name which holds the file contents, or nil if - it does not apply. +offset: anInteger + Not commented.  -File: gst-base.info, Node: VFS.TmpFileArchiveMemberHandler-finalization, Prev: VFS.TmpFileArchiveMemberHandler-directory operations, Up: VFS.TmpFileArchiveMemberHandler +File: gst-base.info, Node: VFS.StoredZipMember-opening, Prev: VFS.StoredZipMember-accessing, Up: VFS.StoredZipMember -1.205.2 VFS.TmpFileArchiveMemberHandler: finalization ------------------------------------------------------ +1.207.2 VFS.StoredZipMember: opening +------------------------------------ -release - Release the resources used by the receiver that don't survive when - reloading a snapshot. +open: class mode: mode ifFail: aBlock + Not commented.  -File: gst-base.info, Node: VFS.VFSHandler, Next: Warning, Prev: VFS.TmpFileArchiveMemberHandler, Up: Base classes +File: gst-base.info, Node: VFS.TmpFileArchiveMember, Next: VFS.ZipFile, Prev: VFS.StoredZipMember, Up: Base classes -1.206 VFS.VFSHandler -==================== +1.208 VFS.TmpFileArchiveMember +============================== Defined in namespace Smalltalk.VFS -Superclass: Object +Superclass: VFS.ArchiveMember Category: Streams-Files - VFSHandler is the abstract class for implementations of File and - Directory. These classes only delegate to the appropriate - handler, which is in charge of actually accessing or "molding" the - filesystem. * Menu: -* VFS.VFSHandler class-initializing:: (class) -* VFS.VFSHandler class-instance creation:: (class) -* VFS.VFSHandler-accessing:: (instance) -* VFS.VFSHandler-directory operations:: (instance) -* VFS.VFSHandler-file operations:: (instance) -* VFS.VFSHandler-releasing:: (instance) -* VFS.VFSHandler-testing:: (instance) - - -File: gst-base.info, Node: VFS.VFSHandler class-initializing, Next: VFS.VFSHandler class-instance creation, Up: VFS.VFSHandler - -1.206.1 VFS.VFSHandler class: initializing ------------------------------------------- - -fileSystems - Answer the virtual file systems that can be processed by this - subclass. The default is to answer an empty array, but subclasses - can override this. If you do so, you should override - #vfsFor:name:subPath: as well or you risk infinite loops. - -initialize - Register the receiver with ObjectMemory - -priority - Answer the priority for this class (higher number = higher - priority) in case multiple classes implement the same file system. - The default is 0. - -register: fileSystem forClass: vfsHandlerClass - Register the given file system to be handled by an instance of - vfsHandlerClass. This is automatically called if the class - overrides #fileSystems. - -update: aspect - Private - Remove the files before quitting, and register the - virtual filesystems specified by the subclasses upon image load. - - - -File: gst-base.info, Node: VFS.VFSHandler class-instance creation, Next: VFS.VFSHandler-accessing, Prev: VFS.VFSHandler class-initializing, Up: VFS.VFSHandler - -1.206.2 VFS.VFSHandler class: instance creation ------------------------------------------------ - -for: fileName - Answer the (real or virtual) file handler for the file named - fileName - +* VFS.TmpFileArchiveMember-directory operations:: (instance) +* VFS.TmpFileArchiveMember-finalization:: (instance) +* VFS.TmpFileArchiveMember-still unclassified:: (instance)  -File: gst-base.info, Node: VFS.VFSHandler-accessing, Next: VFS.VFSHandler-directory operations, Prev: VFS.VFSHandler class-instance creation, Up: VFS.VFSHandler - -1.206.3 VFS.VFSHandler: accessing ---------------------------------- - -creationTime - Answer the creation time of the file identified by the receiver. - On some operating systems, this could actually be the last change - time (the `last change time' has to do with permissions, ownership - and the like). - -fullName - Answer the name of the file identified by the receiver as answered - by File>>#name. - -lastAccessTime - Answer the last access time of the file identified by the receiver - -lastChangeTime - Answer the last change time of the file identified by the receiver - (the `last change time' has to do with permissions, ownership and - the like). On some operating systems, this could actually be the - file creation time. - -lastModifyTime - Answer the last modify time of the file identified by the receiver - (the `last modify time' has to do with the actual file contents). +File: gst-base.info, Node: VFS.TmpFileArchiveMember-directory operations, Next: VFS.TmpFileArchiveMember-finalization, Up: VFS.TmpFileArchiveMember -name - Answer the name of the file identified by the receiver +1.208.1 VFS.TmpFileArchiveMember: directory operations +------------------------------------------------------ -realFileName +file Answer the real file name which holds the file contents, or nil if it does not apply. -refresh - Refresh the statistics for the receiver - -size - Answer the size of the file identified by the receiver +open: class mode: mode ifFail: aBlock + Open the receiver in the given mode (as answered by FileStream's + class constant methods)  -File: gst-base.info, Node: VFS.VFSHandler-directory operations, Next: VFS.VFSHandler-file operations, Prev: VFS.VFSHandler-accessing, Up: VFS.VFSHandler - -1.206.4 VFS.VFSHandler: directory operations --------------------------------------------- - -at: aName - Answer a VFSHandler for a file named `aName' residing in the - directory represented by the receiver. +File: gst-base.info, Node: VFS.TmpFileArchiveMember-finalization, Next: VFS.TmpFileArchiveMember-still unclassified, Prev: VFS.TmpFileArchiveMember-directory operations, Up: VFS.TmpFileArchiveMember -createDir: dirName - Create a subdirectory of the receiver, naming it dirName. +1.208.2 VFS.TmpFileArchiveMember: finalization +---------------------------------------------- -do: aBlock - Evaluate aBlock once for each file in the directory represented by - the receiver, passing its name. aBlock should not return. +release + Release the resources used by the receiver that don't survive when + reloading a snapshot.  -File: gst-base.info, Node: VFS.VFSHandler-file operations, Next: VFS.VFSHandler-releasing, Prev: VFS.VFSHandler-directory operations, Up: VFS.VFSHandler - -1.206.5 VFS.VFSHandler: file operations ---------------------------------------- - -lastAccessTime: accessDateTime lastModifyTime: modifyDateTime - Set the receiver's timestamps to be accessDateTime and - modifyDateTime. If your file system does not support distinct - access and modification times, you should discard accessDateTime. - -open: mode ifFail: aBlock - Open the receiver in the given mode (as answered by FileStream's - class constant methods) - -open: class mode: mode ifFail: aBlock - Open the receiver in the given mode (as answered by FileStream's - class constant methods) - -openDescriptor: mode ifFail: aBlock - Open the receiver in the given mode (as answered by FileStream's - class constant methods) - -remove - Remove the file with the given path name +File: gst-base.info, Node: VFS.TmpFileArchiveMember-still unclassified, Prev: VFS.TmpFileArchiveMember-finalization, Up: VFS.TmpFileArchiveMember -renameTo: newFileName - Rename the file with the given path name oldFileName to newFileName +1.208.3 VFS.TmpFileArchiveMember: still unclassified +---------------------------------------------------- -symlinkFrom: srcName - Create the receiver as a symlink from the relative path srcName +extracted + Answer whether the file has already been extracted to disk.  -File: gst-base.info, Node: VFS.VFSHandler-releasing, Next: VFS.VFSHandler-testing, Prev: VFS.VFSHandler-file operations, Up: VFS.VFSHandler +File: gst-base.info, Node: VFS.ZipFile, Next: Warning, Prev: VFS.TmpFileArchiveMember, Up: Base classes -1.206.6 VFS.VFSHandler: releasing ---------------------------------- +1.209 VFS.ZipFile +================= + +Defined in namespace Smalltalk.VFS +Superclass: VFS.ArchiveFile +Category: Streams-Files + ZipFile transparently extracts files from a ZIP archive. -finalize - Upon finalization, we remove the file that was temporarily holding - the file contents +* Menu: +* VFS.ZipFile-members:: (instance)  -File: gst-base.info, Node: VFS.VFSHandler-testing, Prev: VFS.VFSHandler-releasing, Up: VFS.VFSHandler +File: gst-base.info, Node: VFS.ZipFile-members, Up: VFS.ZipFile -1.206.7 VFS.VFSHandler: testing -------------------------------- +1.209.1 VFS.ZipFile: members +---------------------------- -exists - Answer whether a file with the name contained in the receiver does - exist. +centralDirectoryRangeIn: f + Not commented. -isAccessible - Answer whether a directory with the name contained in the receiver - does exist and can be accessed +createDirectory: dirName + Create a subdirectory of the receiver, naming it dirName. -isDirectory - Answer whether a file with the name contained in the receiver does - exist and identifies a directory. +extractMember: anArchiveMember into: temp + Extract the contents of anArchiveMember into a file that resides + on disk, and answer the name of the file. -isExecutable - Answer whether a file with the name contained in the receiver does - exist and is executable +fileData + Extract the directory listing from the archive -isReadable - Answer whether a file with the name contained in the receiver does - exist and is readable +member: anArchiveMember mode: bits + Set the permission bits for the file in anArchiveMember. -isSymbolicLink - Answer whether the file is a symbolic link. +removeMember: anArchiveMember + Remove the member represented by anArchiveMember. -isWriteable - Answer whether a file with the name contained in the receiver does - exist and is writeable +updateMember: anArchiveMember + Update the member represented by anArchiveMember by copying the + file into which it was extracted back to the archive.  -File: gst-base.info, Node: Warning, Next: WeakArray, Prev: VFS.VFSHandler, Up: Base classes +File: gst-base.info, Node: Warning, Next: WeakArray, Prev: VFS.ZipFile, Up: Base classes -1.207 Warning +1.210 Warning ============= Defined in namespace Smalltalk @@ -4613,7 +5321,7 @@  File: gst-base.info, Node: Warning-exception description, Up: Warning -1.207.1 Warning: exception description +1.210.1 Warning: exception description -------------------------------------- description @@ -4623,7 +5331,7 @@  File: gst-base.info, Node: WeakArray, Next: WeakIdentitySet, Prev: Warning, Up: Base classes -1.208 WeakArray +1.211 WeakArray =============== Defined in namespace Smalltalk @@ -4642,7 +5350,7 @@  File: gst-base.info, Node: WeakArray class-instance creation, Next: WeakArray-accessing, Up: WeakArray -1.208.1 WeakArray class: instance creation +1.211.1 WeakArray class: instance creation ------------------------------------------ new: size @@ -4653,7 +5361,7 @@  File: gst-base.info, Node: WeakArray-accessing, Next: WeakArray-conversion, Prev: WeakArray class-instance creation, Up: WeakArray -1.208.2 WeakArray: accessing +1.211.2 WeakArray: accessing ---------------------------- aliveObjectsDo: aBlock @@ -4700,7 +5408,7 @@  File: gst-base.info, Node: WeakArray-conversion, Next: WeakArray-loading, Prev: WeakArray-accessing, Up: WeakArray -1.208.3 WeakArray: conversion +1.211.3 WeakArray: conversion ----------------------------- asArray @@ -4723,7 +5431,7 @@  File: gst-base.info, Node: WeakArray-loading, Prev: WeakArray-conversion, Up: WeakArray -1.208.4 WeakArray: loading +1.211.4 WeakArray: loading -------------------------- postLoad @@ -4734,7 +5442,7 @@  File: gst-base.info, Node: WeakIdentitySet, Next: WeakKeyDictionary, Prev: WeakArray, Up: Base classes -1.209 WeakIdentitySet +1.212 WeakIdentitySet ===================== Defined in namespace Smalltalk @@ -4752,7 +5460,7 @@  File: gst-base.info, Node: WeakIdentitySet-accessing, Up: WeakIdentitySet -1.209.1 WeakIdentitySet: accessing +1.212.1 WeakIdentitySet: accessing ---------------------------------- identityIncludes: anObject @@ -4763,7 +5471,7 @@  File: gst-base.info, Node: WeakKeyDictionary, Next: WeakKeyIdentityDictionary, Prev: WeakIdentitySet, Up: Base classes -1.210 WeakKeyDictionary +1.213 WeakKeyDictionary ======================= Defined in namespace Smalltalk @@ -4782,7 +5490,7 @@  File: gst-base.info, Node: WeakKeyDictionary class-hacks, Next: WeakKeyDictionary-accessing, Up: WeakKeyDictionary -1.210.1 WeakKeyDictionary class: hacks +1.213.1 WeakKeyDictionary class: hacks -------------------------------------- postLoad @@ -4793,7 +5501,7 @@  File: gst-base.info, Node: WeakKeyDictionary-accessing, Prev: WeakKeyDictionary class-hacks, Up: WeakKeyDictionary -1.210.2 WeakKeyDictionary: accessing +1.213.2 WeakKeyDictionary: accessing ------------------------------------ add: anAssociation @@ -4806,7 +5514,7 @@  File: gst-base.info, Node: WeakKeyIdentityDictionary, Next: WeakSet, Prev: WeakKeyDictionary, Up: Base classes -1.211 WeakKeyIdentityDictionary +1.214 WeakKeyIdentityDictionary =============================== Defined in namespace Smalltalk @@ -4822,7 +5530,7 @@  File: gst-base.info, Node: WeakSet, Next: WeakValueIdentityDictionary, Prev: WeakKeyIdentityDictionary, Up: Base classes -1.212 WeakSet +1.215 WeakSet ============= Defined in namespace Smalltalk @@ -4841,7 +5549,7 @@  File: gst-base.info, Node: WeakSet-accessing, Next: WeakSet-copying, Up: WeakSet -1.212.1 WeakSet: accessing +1.215.1 WeakSet: accessing -------------------------- add: anObject @@ -4856,7 +5564,7 @@  File: gst-base.info, Node: WeakSet-copying, Next: WeakSet-loading, Prev: WeakSet-accessing, Up: WeakSet -1.212.2 WeakSet: copying +1.215.2 WeakSet: copying ------------------------ deepCopy @@ -4871,7 +5579,7 @@  File: gst-base.info, Node: WeakSet-loading, Prev: WeakSet-copying, Up: WeakSet -1.212.3 WeakSet: loading +1.215.3 WeakSet: loading ------------------------ postLoad @@ -4882,7 +5590,7 @@  File: gst-base.info, Node: WeakValueIdentityDictionary, Next: WeakValueLookupTable, Prev: WeakSet, Up: Base classes -1.213 WeakValueIdentityDictionary +1.216 WeakValueIdentityDictionary ================================= Defined in namespace Smalltalk @@ -4898,7 +5606,7 @@  File: gst-base.info, Node: WeakValueLookupTable, Next: WordArray, Prev: WeakValueIdentityDictionary, Up: Base classes -1.214 WeakValueLookupTable +1.217 WeakValueLookupTable ========================== Defined in namespace Smalltalk @@ -4918,7 +5626,7 @@  File: gst-base.info, Node: WeakValueLookupTable class-hacks, Next: WeakValueLookupTable-hacks, Up: WeakValueLookupTable -1.214.1 WeakValueLookupTable class: hacks +1.217.1 WeakValueLookupTable class: hacks ----------------------------------------- primNew: realSize @@ -4929,7 +5637,7 @@  File: gst-base.info, Node: WeakValueLookupTable-hacks, Next: WeakValueLookupTable-rehashing, Prev: WeakValueLookupTable class-hacks, Up: WeakValueLookupTable -1.214.2 WeakValueLookupTable: hacks +1.217.2 WeakValueLookupTable: hacks ----------------------------------- at: key ifAbsent: aBlock @@ -4947,7 +5655,7 @@  File: gst-base.info, Node: WeakValueLookupTable-rehashing, Prev: WeakValueLookupTable-hacks, Up: WeakValueLookupTable -1.214.3 WeakValueLookupTable: rehashing +1.217.3 WeakValueLookupTable: rehashing --------------------------------------- rehash @@ -4957,7 +5665,7 @@  File: gst-base.info, Node: WordArray, Next: WriteStream, Prev: WeakValueLookupTable, Up: Base classes -1.215 WordArray +1.218 WordArray =============== Defined in namespace Smalltalk @@ -4970,7 +5678,7 @@  File: gst-base.info, Node: WriteStream, Next: ZeroDivide, Prev: WordArray, Up: Base classes -1.216 WriteStream +1.219 WriteStream ================= Defined in namespace Smalltalk @@ -4988,7 +5696,7 @@  File: gst-base.info, Node: WriteStream class-instance creation, Next: WriteStream-accessing-writing, Up: WriteStream -1.216.1 WriteStream class: instance creation +1.219.1 WriteStream class: instance creation -------------------------------------------- on: aCollection @@ -5008,7 +5716,7 @@  File: gst-base.info, Node: WriteStream-accessing-writing, Next: WriteStream-positioning, Prev: WriteStream class-instance creation, Up: WriteStream -1.216.2 WriteStream: accessing-writing +1.219.2 WriteStream: accessing-writing -------------------------------------- contents @@ -5034,7 +5742,7 @@  File: gst-base.info, Node: WriteStream-positioning, Prev: WriteStream-accessing-writing, Up: WriteStream -1.216.3 WriteStream: positioning +1.219.3 WriteStream: positioning -------------------------------- emptyStream @@ -5044,7 +5752,7 @@  File: gst-base.info, Node: ZeroDivide, Prev: WriteStream, Up: Base classes -1.217 ZeroDivide +1.220 ZeroDivide ================ Defined in namespace Smalltalk @@ -5063,7 +5771,7 @@  File: gst-base.info, Node: ZeroDivide class-instance creation, Next: ZeroDivide-accessing, Up: ZeroDivide -1.217.1 ZeroDivide class: instance creation +1.220.1 ZeroDivide class: instance creation ------------------------------------------- dividend: aNumber @@ -5078,7 +5786,7 @@  File: gst-base.info, Node: ZeroDivide-accessing, Next: ZeroDivide-description, Prev: ZeroDivide class-instance creation, Up: ZeroDivide -1.217.2 ZeroDivide: accessing +1.220.2 ZeroDivide: accessing ----------------------------- dividend @@ -5088,7 +5796,7 @@  File: gst-base.info, Node: ZeroDivide-description, Prev: ZeroDivide-accessing, Up: ZeroDivide -1.217.3 ZeroDivide: description +1.220.3 ZeroDivide: description ------------------------------- description @@ -5119,13 +5827,14 @@ * BlockContext: BlockContext. (line 6) * Boolean: Boolean. (line 6) * ByteArray: ByteArray. (line 6) -* ByteStream: ByteStream. (line 6) * CAggregate: CAggregate. (line 6) * CallinProcess: CallinProcess. (line 6) * CArray: CArray. (line 6) * CArrayCType: CArrayCType. (line 6) * CBoolean: CBoolean. (line 6) * CByte: CByte. (line 6) +* CCallable: CCallable. (line 6) +* CCallbackDescriptor: CCallbackDescriptor. (line 6) * CChar: CChar. (line 6) * CCompound: CCompound. (line 6) * CDouble: CDouble. (line 6) @@ -5178,6 +5887,7 @@ * False: False. (line 6) * File: File. (line 6) * FileDescriptor: FileDescriptor. (line 6) +* FilePath: FilePath. (line 6) * FileSegment: FileSegment. (line 6) * FileStream: FileStream. (line 6) * Float: Float. (line 6) @@ -5194,6 +5904,7 @@ * IdentitySet: IdentitySet. (line 6) * Integer: Integer. (line 6) * Interval: Interval. (line 6) +* Iterable: Iterable. (line 6) * LargeArray: LargeArray. (line 6) * LargeArrayedCollection: LargeArrayedCollection. (line 6) @@ -5236,6 +5947,7 @@ * Point: Point. (line 6) * PositionableStream: PositionableStream. (line 6) * Process: Process. (line 6) +* ProcessEnvironment: ProcessEnvironment. (line 6) * ProcessorScheduler: ProcessorScheduler. (line 6) * Promise: Promise. (line 6) * Random: Random. (line 6) @@ -5319,6 +6031,8 @@ (line 6) * SystemExceptions.SubclassResponsibility: SystemExceptions.SubclassResponsibility. (line 6) +* SystemExceptions.UnhandledException: SystemExceptions.UnhandledException. + (line 6) * SystemExceptions.UserInterrupt: SystemExceptions.UserInterrupt. (line 6) * SystemExceptions.VerificationError: SystemExceptions.VerificationError. @@ -5342,19 +6056,13 @@ * VariableBinding: VariableBinding. (line 6) * VersionableObjectProxy: VersionableObjectProxy. (line 6) -* VFS.ArchiveFileHandler: VFS.ArchiveFileHandler. - (line 6) -* VFS.ArchiveMemberHandler: VFS.ArchiveMemberHandler. - (line 6) -* VFS.CStatStruct: VFS.CStatStruct. (line 6) -* VFS.DecodedFileHandler: VFS.DecodedFileHandler. - (line 6) -* VFS.FileHandlerWrapper: VFS.FileHandlerWrapper. - (line 6) -* VFS.RealFileHandler: VFS.RealFileHandler. (line 6) -* VFS.TmpFileArchiveMemberHandler: VFS.TmpFileArchiveMemberHandler. +* VFS.ArchiveFile: VFS.ArchiveFile. (line 6) +* VFS.ArchiveMember: VFS.ArchiveMember. (line 6) +* VFS.FileWrapper: VFS.FileWrapper. (line 6) +* VFS.StoredZipMember: VFS.StoredZipMember. (line 6) +* VFS.TmpFileArchiveMember: VFS.TmpFileArchiveMember. (line 6) -* VFS.VFSHandler: VFS.VFSHandler. (line 6) +* VFS.ZipFile: VFS.ZipFile. (line 6) * Warning: Warning. (line 6) * WeakArray: WeakArray. (line 6) * WeakIdentitySet: WeakIdentitySet. (line 6) Binary files smalltalk-3.0.3/doc/gst-base.info-4 and smalltalk-3.0.4/doc/gst-base.info-4 differ Binary files smalltalk-3.0.3/doc/gst-base.info-5 and smalltalk-3.0.4/doc/gst-base.info-5 differ diff -rNu smalltalk-3.0.3/doc/gst-config.1 smalltalk-3.0.4/doc/gst-config.1 --- smalltalk-3.0.3/doc/gst-config.1 2008-05-14 12:18:13.000000000 +0200 +++ smalltalk-3.0.4/doc/gst-config.1 2008-08-09 15:31:55.000000000 +0200 @@ -1,5 +1,5 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.28. -.TH GST-CONFIG "1" "May 2008" "gst-config 3.0.3" "User Commands" +.TH GST-CONFIG "1" "August 2008" "gst-config 3.0.4" "User Commands" .SH NAME gst-config \- configuration for libgst .SH SYNOPSIS diff -rNu smalltalk-3.0.3/doc/gst-convert.1 smalltalk-3.0.4/doc/gst-convert.1 --- smalltalk-3.0.3/doc/gst-convert.1 2008-05-14 12:18:15.000000000 +0200 +++ smalltalk-3.0.4/doc/gst-convert.1 2008-08-09 15:32:03.000000000 +0200 @@ -1,5 +1,5 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.28. -.TH GST-CONVERT "1" "May 2008" "gst-convert version 3.0.3" "User Commands" +.TH GST-CONVERT "1" "August 2008" "gst-convert version 3.0.4" "User Commands" .SH NAME gst-convert \- Smalltalk syntax converter and beautifier .SH DESCRIPTION diff -rNu smalltalk-3.0.3/doc/gst-doc.1 smalltalk-3.0.4/doc/gst-doc.1 --- smalltalk-3.0.3/doc/gst-doc.1 2008-05-14 12:18:17.000000000 +0200 +++ smalltalk-3.0.4/doc/gst-doc.1 2008-08-09 15:32:06.000000000 +0200 @@ -1,5 +1,5 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.28. -.TH GST-DOC "1" "May 2008" "gst-doc version 3.0.3" "User Commands" +.TH GST-DOC "1" "August 2008" "gst-doc version 3.0.4" "User Commands" .SH NAME gst-doc \- GNU Smalltalk documentation generator .SH DESCRIPTION diff -rNu smalltalk-3.0.3/doc/gst-libs.info smalltalk-3.0.4/doc/gst-libs.info --- smalltalk-3.0.3/doc/gst-libs.info 2008-05-14 12:18:10.000000000 +0200 +++ smalltalk-3.0.4/doc/gst-libs.info 2008-08-09 15:31:33.000000000 +0200 @@ -17,7 +17,7 @@ Indirect: gst-libs.info-1: 694 gst-libs.info-2: 300249 -gst-libs.info-3: 592169 +gst-libs.info-3: 592431  Tag Table: (Indirect) @@ -386,62 +386,62 @@ Node: TCP.Socket-out-of-band data340481 Node: TCP.Socket-printing340793 Node: TCP.Socket-stream protocol341063 -Node: TCP.SocketAddress343419 -Node: TCP.SocketAddress class-abstract343950 -Node: TCP.SocketAddress class-accessing344394 -Node: TCP.SocketAddress class-C call-outs346397 -Node: TCP.SocketAddress class-host name lookup346838 -Node: TCP.SocketAddress class-initialization347646 -Node: TCP.SocketAddress-accessing348856 -Node: TCP.SocketImpl349863 -Node: TCP.SocketImpl class-parameters350253 -Node: TCP.SocketImpl-abstract350515 -Node: TCP.SocketImpl-socket operations350848 -Node: TCP.TCPSocketImpl351290 -Node: TCP.TCPSocketImpl class-C constants351743 -Node: TCP.TCPSocketImpl class-implementation352065 -Node: TCP.TCPSocketImpl-implementation352443 -Node: TCP.TCPSocketImpl-socket options352813 -Node: TCP.UDPSocketImpl353172 -Node: TCP.UDPSocketImpl class-C constants353584 -Node: TCP.UDPSocketImpl class-implementation353873 -Node: TCP.UDPSocketImpl-multicasting354249 -Node: TCP.WriteBuffer355157 -Node: TCP.WriteBuffer-buffer handling355619 -Node: TCP.WriteBuffer-testing356105 -Node: ZLib package356316 -Node: ZLib.DeflateStream357399 -Node: ZLib.DeflateStream class-instance creation357784 -Node: ZLib.DeflateWriteStream358261 -Node: ZLib.GZipDeflateStream358635 -Node: ZLib.GZipDeflateStream class-instance creation359055 -Node: ZLib.GZipDeflateWriteStream359548 -Node: ZLib.GZipInflateStream359921 -Node: ZLib.InflateStream360277 -Node: ZLib.RawDeflateStream360636 -Node: ZLib.RawDeflateStream class-instance creation361043 -Node: ZLib.RawDeflateWriteStream361776 -Node: ZLib.RawDeflateWriteStream class-instance creation362202 -Node: ZLib.RawInflateStream362689 -Node: ZLib.RawInflateStream-positioning363085 -Node: ZLib.ZlibError364176 -Node: ZLib.ZlibError-accessing364548 -Node: ZLib.ZlibReadStream364816 -Node: ZLib.ZlibReadStream-streaming365224 -Node: ZLib.ZlibStream366161 -Node: ZLib.ZlibStream class-accessing366682 -Node: ZLib.ZlibStream class-instance creation367407 -Node: ZLib.ZlibStream-streaming367821 -Node: ZLib.ZlibWriteStream368264 -Node: ZLib.ZlibWriteStream-streaming368680 -Node: XML/XPath/XSL packages370515 -Node: Building a DOM from XML370864 -Node: Building XML376272 -Node: Using DTDs379459 -Node: XSL Processing382732 -Node: Attributions384171 -Node: Class index384534 -Node: Method index394848 -Node: Cross-reference592169 +Node: TCP.SocketAddress343539 +Node: TCP.SocketAddress class-abstract344070 +Node: TCP.SocketAddress class-accessing344514 +Node: TCP.SocketAddress class-C call-outs346517 +Node: TCP.SocketAddress class-host name lookup346958 +Node: TCP.SocketAddress class-initialization347766 +Node: TCP.SocketAddress-accessing348976 +Node: TCP.SocketImpl349983 +Node: TCP.SocketImpl class-parameters350373 +Node: TCP.SocketImpl-abstract350635 +Node: TCP.SocketImpl-socket operations350968 +Node: TCP.TCPSocketImpl351410 +Node: TCP.TCPSocketImpl class-C constants351863 +Node: TCP.TCPSocketImpl class-implementation352185 +Node: TCP.TCPSocketImpl-implementation352563 +Node: TCP.TCPSocketImpl-socket options352933 +Node: TCP.UDPSocketImpl353292 +Node: TCP.UDPSocketImpl class-C constants353704 +Node: TCP.UDPSocketImpl class-implementation353993 +Node: TCP.UDPSocketImpl-multicasting354369 +Node: TCP.WriteBuffer355277 +Node: TCP.WriteBuffer-buffer handling355739 +Node: TCP.WriteBuffer-testing356225 +Node: ZLib package356436 +Node: ZLib.DeflateStream357519 +Node: ZLib.DeflateStream class-instance creation357904 +Node: ZLib.DeflateWriteStream358381 +Node: ZLib.GZipDeflateStream358755 +Node: ZLib.GZipDeflateStream class-instance creation359175 +Node: ZLib.GZipDeflateWriteStream359668 +Node: ZLib.GZipInflateStream360041 +Node: ZLib.InflateStream360397 +Node: ZLib.RawDeflateStream360756 +Node: ZLib.RawDeflateStream class-instance creation361163 +Node: ZLib.RawDeflateWriteStream361896 +Node: ZLib.RawDeflateWriteStream class-instance creation362322 +Node: ZLib.RawInflateStream362809 +Node: ZLib.RawInflateStream-positioning363205 +Node: ZLib.ZlibError364296 +Node: ZLib.ZlibError-accessing364668 +Node: ZLib.ZlibReadStream364936 +Node: ZLib.ZlibReadStream-streaming365344 +Node: ZLib.ZlibStream366281 +Node: ZLib.ZlibStream class-accessing366802 +Node: ZLib.ZlibStream class-instance creation367527 +Node: ZLib.ZlibStream-streaming367941 +Node: ZLib.ZlibWriteStream368384 +Node: ZLib.ZlibWriteStream-streaming368800 +Node: XML/XPath/XSL packages370635 +Node: Building a DOM from XML370984 +Node: Building XML376392 +Node: Using DTDs379579 +Node: XSL Processing382852 +Node: Attributions384291 +Node: Class index384654 +Node: Method index394968 +Node: Cross-reference592431  End Tag Table diff -rNu smalltalk-3.0.3/doc/gst-libs.info-2 smalltalk-3.0.4/doc/gst-libs.info-2 --- smalltalk-3.0.3/doc/gst-libs.info-2 2008-05-14 12:18:10.000000000 +0200 +++ smalltalk-3.0.4/doc/gst-libs.info-2 2008-08-09 15:31:33.000000000 +0200 @@ -1303,6 +1303,10 @@ atEnd Answer whether more data is available on the socket +availableBytes + Answer how many bytes are available in the socket's read buffer or + from the operating system. + bufferContents Answer the current contents of the read buffer @@ -2795,15 +2799,15 @@ (line 6) * >: Complex-comparing. (line 15) * >=: Complex-comparing. (line 18) -* ? <1>: I18N.LcPrintFormats-printing. +* ? <1>: I18N.LcMessages-opening MO files. (line 6) -* ? <2>: I18N.LcMessages-opening MO files. +* ? <2>: I18N.LcPrintFormats-printing. (line 6) -* ? <3>: I18N.LocaleConventions-accessing. +* ? <3>: I18N.LcMessagesDomain-querying. (line 6) * ? <4>: I18N.LocaleConventions class-accessing. (line 6) -* ?: I18N.LcMessagesDomain-querying. +* ?: I18N.LocaleConventions-accessing. (line 6) * abs: Complex-math. (line 18) * absSquared: Complex-math. (line 21) @@ -2813,9 +2817,9 @@ (line 6) * accept_: TCP.ServerSocket-accessing. (line 10) -* accept_peer_addrLen_ <1>: TCP.AbstractSocketImpl-C call-outs. +* accept_peer_addrLen_ <1>: TCP.AbstractSocketImpl class-C call-outs. (line 6) -* accept_peer_addrLen_: TCP.AbstractSocketImpl class-C call-outs. +* accept_peer_addrLen_: TCP.AbstractSocketImpl-C call-outs. (line 6) * activate: BLOX.BWidget-widget protocol. (line 6) @@ -2835,9 +2839,9 @@ (line 32) * add_: BLOX.BMenuBar-accessing. (line 6) -* add_afterIndex_ <1>: BLOX.BList-accessing. +* add_afterIndex_ <1>: BLOX.BDropDown-list box accessing. (line 6) -* add_afterIndex_: BLOX.BDropDown-list box accessing. +* add_afterIndex_: BLOX.BList-accessing. (line 6) * add_element_afterIndex_ <1>: BLOX.BDropDown-list box accessing. (line 11) @@ -2849,13 +2853,13 @@ (line 12) * addButton_receiver_message_argument_: BLOX.BDialog-accessing. (line 17) -* addChild_ <1>: BLOX.BCanvas-geometry management. +* addChild_ <1>: BLOX.BPopupWindow-geometry management. (line 6) -* addChild_ <2>: BLOX.Blox-customization. +* addChild_ <2>: BLOX.BCanvas-geometry management. (line 6) -* addChild_ <3>: BLOX.BPopupWindow-geometry management. +* addChild_ <3>: BLOX.BWidget-customization. (line 6) -* addChild_: BLOX.BWidget-customization. +* addChild_: BLOX.Blox-customization. (line 6) * addEventSet_: BLOX.BEventTarget-intercepting events. (line 6) @@ -2871,31 +2875,31 @@ (line 6) * addMenuItemFor_notifying_: BLOX.BMenu-callback registration. (line 9) -* address <1>: TCP.AbstractSocket-accessing. - (line 6) -* address <2>: TCP.ServerSocket-accessing. +* address <1>: TCP.ServerSocket-accessing. (line 15) +* address <2>: TCP.DatagramSocket-accessing. + (line 6) * address <3>: TCP.Datagram-accessing. (line 6) -* address <4>: TCP.DatagramSocket-accessing. +* address <4>: TCP.Socket-accessing. (line 6) -* address: TCP.Socket-accessing. +* address: TCP.AbstractSocket-accessing. (line 6) * address_: TCP.Datagram-accessing. (line 9) * addressClass <1>: TCP.UDPSocketImpl class-implementation. (line 6) -* addressClass <2>: TCP.ICMPSocketImpl class-implementation. +* addressClass <2>: TCP.OOBSocketImpl class-implementation. (line 6) * addressClass <3>: TCP.IPAddress-accessing. (line 6) -* addressClass <4>: TCP.TCPSocketImpl class-implementation. +* addressClass <4>: TCP.AbstractSocketImpl class-abstract. (line 6) * addressClass <5>: TCP.AbstractSocketImpl-socket operations. (line 11) -* addressClass <6>: TCP.OOBSocketImpl class-implementation. +* addressClass <6>: TCP.TCPSocketImpl class-implementation. (line 6) -* addressClass: TCP.AbstractSocketImpl class-abstract. +* addressClass: TCP.ICMPSocketImpl class-implementation. (line 6) * addressFamily <1>: TCP.IPAddress class-C constants. (line 6) @@ -2928,54 +2932,54 @@ * asFloatE: Complex-converting. (line 15) * asFloatQ: Complex-converting. (line 18) * asFraction: Complex-converting. (line 21) -* asPrimitiveWidget <1>: BLOX.BExtended-accessing. +* asPrimitiveWidget <1>: BLOX.Blox-widget protocol. (line 6) * asPrimitiveWidget <2>: BLOX.BPrimitive-accessing. (line 6) -* asPrimitiveWidget <3>: BLOX.Blox-widget protocol. - (line 6) -* asPrimitiveWidget: BLOX.BMenuObject-accessing. +* asPrimitiveWidget <3>: BLOX.BMenuObject-accessing. (line 38) -* associationAt_ <1>: BLOX.BDropDown-list box accessing. +* asPrimitiveWidget: BLOX.BExtended-accessing. + (line 6) +* associationAt_ <1>: BLOX.BList-accessing. (line 39) -* associationAt_: BLOX.BList-accessing. +* associationAt_: BLOX.BDropDown-list box accessing. (line 39) * asString: I18N.EncodedString-accessing. (line 6) * asUnicodeString: I18N.EncodedString-accessing. (line 9) -* at_ <1>: I18N.EncodedString-accessing. - (line 12) -* at_ <2>: BLOX.BCanvas-widget protocol. - (line 6) -* at_ <3>: I18N.LcMessagesDomain-querying. +* at_ <1>: I18N.LcMessagesDomain-querying. + (line 10) +* at_ <2>: BLOX.Blox class-utility. (line 10) +* at_ <3>: I18N.EncodedString-accessing. + (line 12) * at_ <4>: BLOX.BList-accessing. (line 44) -* at_ <5>: BLOX.BDropDown-list box accessing. +* at_ <5>: DBI.Row-accessing. (line 6) +* at_ <6>: BLOX.BCanvas-widget protocol. + (line 6) +* at_: BLOX.BDropDown-list box accessing. (line 44) -* at_ <6>: DBI.Row-accessing. (line 6) -* at_: BLOX.Blox class-utility. - (line 10) * at_cache_: TCP.SocketAddress class-accessing. (line 13) * at_plural_with_: I18N.LcMessagesDomain-querying. (line 14) -* at_put_ <1>: I18N.LcMessagesDomain-querying. - (line 18) -* at_put_: I18N.EncodedString-accessing. +* at_put_ <1>: I18N.EncodedString-accessing. (line 15) -* atEnd <1>: TCP.ReadBuffer-buffer handling. +* at_put_: I18N.LcMessagesDomain-querying. + (line 18) +* atEnd <1>: I18N.Encoder-stream operations. (line 6) -* atEnd <2>: ZLib.ZlibReadStream-streaming. +* atEnd <2>: TCP.Socket-stream protocol. (line 6) -* atEnd <3>: DBI.ResultSet-cursor access. +* atEnd <3>: TCP.AbstractSocket-stream protocol. (line 6) -* atEnd <4>: I18N.Encoder-stream operations. +* atEnd <4>: DBI.ResultSet-cursor access. (line 6) -* atEnd <5>: TCP.Socket-stream protocol. +* atEnd <5>: TCP.ReadBuffer-buffer handling. (line 6) -* atEnd: TCP.AbstractSocket-stream protocol. +* atEnd: ZLib.ZlibReadStream-streaming. (line 6) * atEndOfInput: I18N.Encoder-stream operations. (line 11) @@ -2984,60 +2988,62 @@ (line 15) * available: TCP.AbstractSocket-accessing. (line 11) -* backgroundColor <1>: BLOX.BCanvas-accessing. +* availableBytes: TCP.Socket-stream protocol. + (line 9) +* backgroundColor <1>: BLOX.BForm-accessing. (line 6) -* backgroundColor <2>: BLOX.BLabel-accessing. - (line 26) -* backgroundColor <3>: BLOX.BButton-accessing. +* backgroundColor <2>: BLOX.BButton-accessing. (line 6) -* backgroundColor <4>: BLOX.BList-accessing. - (line 47) -* backgroundColor <5>: BLOX.BTextAttributes-setting attributes. +* backgroundColor <3>: BLOX.BTextAttributes-setting attributes. + (line 6) +* backgroundColor <4>: BLOX.BProgress-accessing. + (line 6) +* backgroundColor <5>: BLOX.BCanvas-accessing. + (line 6) +* backgroundColor <6>: BLOX.BText-accessing. (line 6) -* backgroundColor <6>: BLOX.BImage-accessing. +* backgroundColor <7>: BLOX.BMenuObject-accessing. + (line 41) +* backgroundColor <8>: BLOX.BEdit-accessing. (line 6) -* backgroundColor <7>: BLOX.BForm-accessing. +* backgroundColor <9>: BLOX.BLabel-accessing. + (line 26) +* backgroundColor <10>: BLOX.BList-accessing. + (line 47) +* backgroundColor <11>: BLOX.BDropDown-accessing. (line 6) -* backgroundColor <8>: BLOX.BText-accessing. +* backgroundColor: BLOX.BImage-accessing. (line 6) -* backgroundColor <9>: BLOX.BDropDown-accessing. +* backgroundColor_ <1>: BLOX.BMenuObject-accessing. + (line 47) +* backgroundColor_ <2>: BLOX.BProgress-accessing. + (line 11) +* backgroundColor_ <3>: BLOX.BTextAttributes class-instance-creation shortcuts. (line 6) -* backgroundColor <10>: BLOX.BProgress-accessing. +* backgroundColor_ <4>: BLOX.BDropDown-accessing. + (line 15) +* backgroundColor_ <5>: BLOX.BDropDownEdit-accessing. (line 6) -* backgroundColor <11>: BLOX.BEdit-accessing. +* backgroundColor_ <6>: BLOX.BDropDownList-accessing. (line 6) -* backgroundColor: BLOX.BMenuObject-accessing. - (line 41) -* backgroundColor_ <1>: BLOX.BTextAttributes-setting attributes. +* backgroundColor_ <7>: BLOX.BTextAttributes-setting attributes. (line 13) -* backgroundColor_ <2>: BLOX.BButton-accessing. +* backgroundColor_ <8>: BLOX.BImage-accessing. (line 12) -* backgroundColor_ <3>: BLOX.BCanvas-accessing. +* backgroundColor_ <9>: BLOX.BText-accessing. (line 12) -* backgroundColor_ <4>: BLOX.BTextAttributes class-instance-creation shortcuts. - (line 6) -* backgroundColor_ <5>: BLOX.BEdit-accessing. +* backgroundColor_ <10>: BLOX.BEdit-accessing. (line 12) -* backgroundColor_ <6>: BLOX.BProgress-accessing. - (line 11) -* backgroundColor_ <7>: BLOX.BForm-accessing. +* backgroundColor_ <11>: BLOX.BCanvas-accessing. (line 12) -* backgroundColor_ <8>: BLOX.BLabel-accessing. - (line 32) -* backgroundColor_ <9>: BLOX.BMenuObject-accessing. - (line 47) -* backgroundColor_ <10>: BLOX.BDropDown-accessing. - (line 15) -* backgroundColor_ <11>: BLOX.BText-accessing. +* backgroundColor_ <12>: BLOX.BButton-accessing. (line 12) -* backgroundColor_ <12>: BLOX.BDropDownEdit-accessing. - (line 6) -* backgroundColor_ <13>: BLOX.BList-accessing. - (line 53) -* backgroundColor_ <14>: BLOX.BImage-accessing. +* backgroundColor_ <13>: BLOX.BForm-accessing. (line 12) -* backgroundColor_: BLOX.BDropDownList-accessing. - (line 6) +* backgroundColor_ <14>: BLOX.BList-accessing. + (line 53) +* backgroundColor_: BLOX.BLabel-accessing. + (line 32) * balloonDelayTime: BLOX.BBalloon class-accessing. (line 6) * balloonDelayTime_: BLOX.BBalloon class-accessing. @@ -3056,30 +3062,30 @@ (line 9) * bindTo_port_: TCP.AbstractSocketImpl-socket operations. (line 15) -* black <1>: BLOX.BTextAttributes-colors. - (line 6) -* black: BLOX.BTextAttributes class-instance-creation shortcuts. +* black <1>: BLOX.BTextAttributes class-instance-creation shortcuts. (line 10) +* black: BLOX.BTextAttributes-colors. + (line 6) * blank: BLOX.BImage-image management. (line 6) * blox <1>: BLOX.BCanvasObject-accessing. (line 6) * blox: BLOX.Gui-accessing. (line 6) * blox_: BLOX.Gui-accessing. (line 9) -* blue <1>: BLOX.BTextAttributes class-instance-creation shortcuts. - (line 13) -* blue: BLOX.BTextAttributes-colors. +* blue <1>: BLOX.BTextAttributes-colors. (line 9) +* blue: BLOX.BTextAttributes class-instance-creation shortcuts. + (line 13) * borderWidth: BLOX.BWidget-accessing. (line 6) * borderWidth_: BLOX.BWidget-accessing. (line 15) -* boundingBox <1>: BLOX.BCanvas-widget protocol. - (line 15) -* boundingBox <2>: BLOX.BBoundingBox-accessing. +* boundingBox <1>: BLOX.BPolyline-accessing. (line 6) -* boundingBox <3>: BLOX.BPolyline-accessing. +* boundingBox <2>: BLOX.BBoundingBox-accessing. (line 6) +* boundingBox <3>: BLOX.BCanvas-widget protocol. + (line 15) * boundingBox <4>: BLOX.BCanvasObject-accessing. (line 9) * boundingBox: BLOX.BWidget-geometry management. @@ -3088,62 +3094,62 @@ (line 9) * bringToTop: BLOX.BWidget-widget protocol. (line 32) -* bufferContents <1>: TCP.ReadBuffer-buffer handling. +* bufferContents <1>: TCP.Socket-stream protocol. + (line 13) +* bufferContents: TCP.ReadBuffer-buffer handling. (line 9) -* bufferContents: TCP.Socket-stream protocol. +* bufferSize <1>: TCP.DatagramSocket-accessing. (line 9) -* bufferSize <1>: TCP.DatagramSocketImpl-accessing. +* bufferSize <2>: ZLib.ZlibStream class-accessing. (line 6) -* bufferSize <2>: TCP.DatagramSocket-accessing. - (line 9) -* bufferSize: ZLib.ZlibStream class-accessing. +* bufferSize: TCP.DatagramSocketImpl-accessing. (line 6) -* bufferSize_ <1>: TCP.DatagramSocketImpl-accessing. - (line 9) +* bufferSize_ <1>: ZLib.ZlibStream class-accessing. + (line 10) * bufferSize_ <2>: TCP.DatagramSocket-accessing. (line 12) -* bufferSize_: ZLib.ZlibStream class-accessing. - (line 10) +* bufferSize_: TCP.DatagramSocketImpl-accessing. + (line 9) * byName_: TCP.SocketAddress class-host name lookup. (line 12) -* callback <1>: BLOX.BWindow-accessing. +* callback <1>: BLOX.BDropDown-callbacks. (line 6) * callback <2>: BLOX.BMenuObject-callback. (line 6) -* callback <3>: BLOX.BButton-accessing. +* callback <3>: BLOX.BEdit-accessing. (line 18) -* callback <4>: BLOX.BEdit-accessing. +* callback <4>: BLOX.BButton-accessing. (line 18) -* callback <5>: BLOX.BButtonLike-accessing. +* callback <5>: BLOX.BList-widget protocol. (line 6) -* callback <6>: BLOX.BDropDown-callbacks. +* callback <6>: BLOX.BButtonLike-accessing. (line 6) * callback <7>: BLOX.BText-accessing. (line 18) -* callback: BLOX.BList-widget protocol. +* callback: BLOX.BWindow-accessing. (line 6) * callback_message_ <1>: BLOX.BDropDownList-callbacks. (line 6) -* callback_message_ <2>: BLOX.BToggle-accessing. - (line 6) -* callback_message_ <3>: BLOX.BRadioButton-accessing. - (line 6) -* callback_message_ <4>: BLOX.BMenuObject-callback. +* callback_message_ <2>: BLOX.BMenuObject-callback. (line 10) -* callback_message_ <5>: BLOX.BWindow-accessing. +* callback_message_ <3>: BLOX.BButton-accessing. + (line 22) +* callback_message_ <4>: BLOX.BList-widget protocol. (line 10) +* callback_message_ <5>: BLOX.BEdit-accessing. + (line 22) * callback_message_ <6>: BLOX.BDropDown-callbacks. (line 10) -* callback_message_ <7>: BLOX.BList-widget protocol. +* callback_message_ <7>: BLOX.BButtonLike-accessing. (line 10) -* callback_message_ <8>: BLOX.BEdit-accessing. - (line 22) +* callback_message_ <8>: BLOX.BRadioButton-accessing. + (line 6) * callback_message_ <9>: BLOX.BText-accessing. (line 22) -* callback_message_ <10>: BLOX.BButtonLike-accessing. +* callback_message_ <10>: BLOX.BWindow-accessing. (line 10) -* callback_message_: BLOX.BButton-accessing. - (line 22) +* callback_message_: BLOX.BToggle-accessing. + (line 6) * callback_message_argument_: BLOX.BMenuObject-callback. (line 15) * callback_using_: BLOX.BMenu-callback registration. @@ -3151,47 +3157,47 @@ * canRead <1>: TCP.OOBSocketImpl-implementation. (line 6) * canRead <2>: TCP.Socket-stream protocol. - (line 12) + (line 16) * canRead: TCP.AbstractSocket-accessing. (line 15) -* canWrite <1>: TCP.Socket-stream protocol. - (line 16) -* canWrite: TCP.AbstractSocket-accessing. +* canWrite <1>: TCP.AbstractSocket-accessing. (line 18) -* cap <1>: BLOX.BLine-accessing. - (line 6) -* cap: BLOX.BPolyline-accessing. +* canWrite: TCP.Socket-stream protocol. + (line 20) +* cap <1>: BLOX.BPolyline-accessing. (line 9) -* cap_ <1>: BLOX.BLine-accessing. - (line 11) -* cap_: BLOX.BPolyline-accessing. +* cap: BLOX.BLine-accessing. + (line 6) +* cap_ <1>: BLOX.BPolyline-accessing. (line 16) -* category <1>: I18N.LcMonetary class-accessing. +* cap_: BLOX.BLine-accessing. + (line 11) +* category <1>: I18N.LcTime class-accessing. (line 6) * category <2>: I18N.LcMessages class-accessing. (line 6) -* category <3>: I18N.LcNumeric class-accessing. +* category <3>: I18N.LcMonetary class-accessing. (line 6) -* category <4>: I18N.LcTime class-accessing. +* category <4>: I18N.LcNumeric class-accessing. (line 6) * category: I18N.LocaleData class-accessing. (line 6) * ceiling: Complex-converting. (line 24) -* center <1>: BLOX.BDialog-widget protocol. +* center <1>: BLOX.BTextAttributes-setting attributes. + (line 20) +* center <2>: BLOX.BBoundingBox-accessing. + (line 9) +* center <3>: BLOX.BWindow-widget protocol. (line 6) -* center <2>: BLOX.BTextAttributes class-instance-creation shortcuts. +* center <4>: BLOX.BTextAttributes class-instance-creation shortcuts. (line 16) -* center <3>: BLOX.BBoundingBox-accessing. - (line 9) -* center <4>: BLOX.BTextAttributes-setting attributes. - (line 20) -* center: BLOX.BWindow-widget protocol. +* center: BLOX.BDialog-widget protocol. (line 6) * center_extent_: BLOX.BBoundingBox-accessing. (line 12) -* centerIn_ <1>: BLOX.BDialog-widget protocol. +* centerIn_ <1>: BLOX.BWindow-widget protocol. (line 9) -* centerIn_: BLOX.BWindow-widget protocol. +* centerIn_: BLOX.BDialog-widget protocol. (line 9) * charset: I18N.LocaleData-accessing. (line 6) @@ -3205,72 +3211,72 @@ (line 6) * child_: I18N.RTENegationNode class-initializing. (line 6) -* child_height_ <1>: BLOX.BCanvas-geometry management. - (line 13) -* child_height_ <2>: BLOX.BText-geometry management. - (line 6) -* child_height_ <3>: BLOX.BPopupWindow-geometry management. - (line 14) -* child_height_: BLOX.BWidget-geometry management. +* child_height_ <1>: BLOX.BWidget-geometry management. (line 12) -* child_heightOffset_ <1>: BLOX.BCanvas-geometry management. +* child_height_ <2>: BLOX.BPopupWindow-geometry management. + (line 14) +* child_height_ <3>: BLOX.BText-geometry management. + (line 6) +* child_height_: BLOX.BCanvas-geometry management. + (line 13) +* child_heightOffset_ <1>: BLOX.BPopupWindow-geometry management. + (line 18) +* child_heightOffset_ <2>: BLOX.BCanvas-geometry management. (line 16) -* child_heightOffset_ <2>: BLOX.BText-geometry management. - (line 9) * child_heightOffset_ <3>: BLOX.BWidget-geometry management. (line 23) -* child_heightOffset_: BLOX.BPopupWindow-geometry management. - (line 18) +* child_heightOffset_: BLOX.BText-geometry management. + (line 9) * child_stretch_: BLOX.BWidget-geometry management. (line 33) -* child_width_ <1>: BLOX.BCanvas-geometry management. - (line 19) -* child_width_ <2>: BLOX.BText-geometry management. - (line 13) -* child_width_ <3>: BLOX.BWidget-geometry management. - (line 40) -* child_width_: BLOX.BPopupWindow-geometry management. +* child_width_ <1>: BLOX.BPopupWindow-geometry management. (line 21) -* child_widthOffset_ <1>: BLOX.BPopupWindow-geometry management. - (line 25) -* child_widthOffset_ <2>: BLOX.BCanvas-geometry management. +* child_width_ <2>: BLOX.BWidget-geometry management. + (line 40) +* child_width_ <3>: BLOX.BText-geometry management. + (line 13) +* child_width_: BLOX.BCanvas-geometry management. + (line 19) +* child_widthOffset_ <1>: BLOX.BCanvas-geometry management. (line 22) +* child_widthOffset_ <2>: BLOX.BText-geometry management. + (line 16) * child_widthOffset_ <3>: BLOX.BWidget-geometry management. (line 51) -* child_widthOffset_: BLOX.BText-geometry management. - (line 16) -* child_x_ <1>: BLOX.BPopupWindow-geometry management. - (line 28) -* child_x_ <2>: BLOX.BWidget-geometry management. - (line 61) -* child_x_ <3>: BLOX.BCanvas-geometry management. +* child_widthOffset_: BLOX.BPopupWindow-geometry management. (line 25) -* child_x_: BLOX.BText-geometry management. +* child_x_ <1>: BLOX.BText-geometry management. (line 20) -* child_xOffset_ <1>: BLOX.BCanvas-geometry management. - (line 29) +* child_x_ <2>: BLOX.BCanvas-geometry management. + (line 25) +* child_x_ <3>: BLOX.BWidget-geometry management. + (line 61) +* child_x_: BLOX.BPopupWindow-geometry management. + (line 28) +* child_xOffset_ <1>: BLOX.BText-geometry management. + (line 24) * child_xOffset_ <2>: BLOX.BWidget-geometry management. (line 71) -* child_xOffset_ <3>: BLOX.BText-geometry management. - (line 24) +* child_xOffset_ <3>: BLOX.BCanvas-geometry management. + (line 29) * child_xOffset_: BLOX.BPopupWindow-geometry management. (line 32) -* child_y_ <1>: BLOX.BCanvas-geometry management. - (line 32) -* child_y_ <2>: BLOX.BText-geometry management. - (line 27) -* child_y_ <3>: BLOX.BWidget-geometry management. +* child_y_ <1>: BLOX.BWidget-geometry management. (line 81) -* child_y_: BLOX.BPopupWindow-geometry management. +* child_y_ <2>: BLOX.BCanvas-geometry management. + (line 32) +* child_y_ <3>: BLOX.BPopupWindow-geometry management. (line 35) -* child_yOffset_ <1>: BLOX.BCanvas-geometry management. - (line 36) -* child_yOffset_ <2>: BLOX.BWidget-geometry management. +* child_y_: BLOX.BText-geometry management. + (line 27) +* child_yOffset_ <1>: BLOX.BWidget-geometry management. (line 91) +* child_yOffset_ <2>: BLOX.BPopupWindow-geometry management. + (line 39) * child_yOffset_ <3>: BLOX.BText-geometry management. (line 31) -* child_yOffset_: BLOX.BPopupWindow-geometry management. - (line 39) +* child_yOffset_: BLOX.BCanvas-geometry management. + (line 36) * childrenCount: BLOX.Blox-widget protocol. (line 9) * childrenDo_: BLOX.Blox-widget protocol. @@ -3287,31 +3293,31 @@ (line 26) * clipboard_: BLOX.Blox class-utility. (line 29) -* close <1>: TCP.AbstractSocket-accessing. - (line 21) -* close <2>: DBI.Connection-connecting. +* close <1>: ZLib.ZlibWriteStream-streaming. (line 6) -* close <3>: TCP.Socket-stream protocol. - (line 20) -* close: ZLib.ZlibWriteStream-streaming. +* close <2>: TCP.AbstractSocket-accessing. + (line 21) +* close <3>: DBI.Connection-connecting. (line 6) +* close: TCP.Socket-stream protocol. + (line 24) * closed: BLOX.BPolyline-accessing. (line 23) * closed_: BLOX.BPolyline-accessing. (line 26) * coerce_: Complex-creation/coercion. (line 6) -* color <1>: BLOX.BColorButton-accessing. - (line 6) -* color: BLOX.BCanvasObject-accessing. +* color <1>: BLOX.BCanvasObject-accessing. (line 12) -* color_ <1>: BLOX.BColorButton-accessing. - (line 9) -* color_: BLOX.BCanvasObject-accessing. +* color: BLOX.BColorButton-accessing. + (line 6) +* color_ <1>: BLOX.BCanvasObject-accessing. (line 15) -* columnAt_ <1>: DBI.ResultSet-accessing. +* color_: BLOX.BColorButton-accessing. + (line 9) +* columnAt_ <1>: DBI.Row-accessing. (line 13) +* columnAt_: DBI.ResultSet-accessing. (line 6) -* columnAt_: DBI.Row-accessing. (line 13) * columnCount: DBI.Row-accessing. (line 16) * columnNames <1>: DBI.Row-accessing. (line 19) * columnNames: DBI.ResultSet-accessing. @@ -3319,11 +3325,11 @@ * columns <1>: DBI.ResultSet-accessing. (line 12) * columns: DBI.Row-accessing. (line 22) -* compressingTo_ <1>: ZLib.RawDeflateStream class-instance creation. +* compressingTo_ <1>: ZLib.DeflateStream class-instance creation. (line 6) -* compressingTo_ <2>: ZLib.GZipDeflateStream class-instance creation. +* compressingTo_ <2>: ZLib.RawDeflateStream class-instance creation. (line 6) -* compressingTo_: ZLib.DeflateStream class-instance creation. +* compressingTo_: ZLib.GZipDeflateStream class-instance creation. (line 6) * compressingTo_level_ <1>: ZLib.DeflateStream class-instance creation. (line 10) @@ -3348,28 +3354,28 @@ (line 6) * connectTo_port_: TCP.SocketImpl-socket operations. (line 6) -* contents <1>: BLOX.BDialog-accessing. - (line 23) -* contents <2>: BLOX.BEdit-accessing. +* contents <1>: BLOX.BText-accessing. (line 27) -* contents <3>: BLOX.BText-accessing. - (line 27) -* contents: ZLib.ZlibWriteStream-streaming. +* contents <2>: ZLib.ZlibWriteStream-streaming. (line 11) -* contents_ <1>: BLOX.BText-accessing. +* contents <3>: BLOX.BDialog-accessing. + (line 23) +* contents: BLOX.BEdit-accessing. + (line 27) +* contents_ <1>: BLOX.BEdit-accessing. (line 30) * contents_ <2>: BLOX.BDialog-accessing. (line 27) * contents_ <3>: BLOX.BDropDown-list box accessing. (line 47) -* contents_ <4>: BLOX.BEdit-accessing. +* contents_ <4>: BLOX.BText-accessing. (line 30) * contents_: BLOX.BList-accessing. (line 59) -* contents_elements_ <1>: BLOX.BDropDown-list box accessing. - (line 51) -* contents_elements_: BLOX.BList-accessing. +* contents_elements_ <1>: BLOX.BList-accessing. (line 63) +* contents_elements_: BLOX.BDropDown-list box accessing. + (line 51) * continue: Debugger-stepping commands. (line 6) * copy: I18N.EncodedString-copying. @@ -3380,10 +3386,10 @@ (line 12) * copyFrom_to_: ZLib.RawInflateStream-positioning. (line 6) -* copyInto_ <1>: BLOX.BCanvasObject-accessing. - (line 18) -* copyInto_: BLOX.BEmbeddedImage-accessing. +* copyInto_ <1>: BLOX.BEmbeddedImage-accessing. (line 6) +* copyInto_: BLOX.BCanvasObject-accessing. + (line 18) * copyObject: BLOX.BCanvasObject-accessing. (line 23) * corner: BLOX.BBoundingBox-accessing. @@ -3394,12 +3400,12 @@ (line 15) * cosh: Complex-transcendental functions. (line 18) -* create <1>: BLOX.BWidget-customization. - (line 13) -* create <2>: BLOX.BExtended-customization. +* create <1>: BLOX.BExtended-customization. (line 6) -* create: BLOX.BCanvasObject-widget protocol. +* create <2>: BLOX.BCanvasObject-widget protocol. (line 6) +* create: BLOX.BWidget-customization. + (line 13) * create_type_protocol_ <1>: TCP.AbstractSocketImpl class-C call-outs. (line 15) * create_type_protocol_: TCP.AbstractSocketImpl-C call-outs. @@ -3420,9 +3426,9 @@ (line 10) * createList: BLOX.BDropDown-flexibility. (line 6) -* createLocalAddress <1>: TCP.SocketAddress class-initialization. +* createLocalAddress <1>: TCP.IPAddress class-initialization. (line 6) -* createLocalAddress: TCP.IPAddress class-initialization. +* createLocalAddress: TCP.SocketAddress class-initialization. (line 6) * createLoopbackHost <1>: TCP.IPAddress class-initialization. (line 10) @@ -3430,10 +3436,10 @@ (line 10) * createTextWidget: BLOX.BDropDown-flexibility. (line 11) -* createUnknownAddress <1>: TCP.SocketAddress class-initialization. - (line 16) -* createUnknownAddress: TCP.IPAddress class-initialization. +* createUnknownAddress <1>: TCP.IPAddress class-initialization. (line 14) +* createUnknownAddress: TCP.SocketAddress class-initialization. + (line 16) * currentColumn: BLOX.BText-position & lines. (line 9) * currentLine <1>: BLOX.BText-position & lines. @@ -3458,39 +3464,39 @@ (line 23) * darkCyan: BLOX.BTextAttributes-colors. (line 15) -* darkGreen <1>: BLOX.BTextAttributes-colors. - (line 18) -* darkGreen: BLOX.BTextAttributes class-instance-creation shortcuts. +* darkGreen <1>: BLOX.BTextAttributes class-instance-creation shortcuts. (line 26) +* darkGreen: BLOX.BTextAttributes-colors. + (line 18) * darkMagenta <1>: BLOX.BTextAttributes class-instance-creation shortcuts. (line 29) * darkMagenta: BLOX.BTextAttributes-colors. (line 21) -* data <1>: TCP.Datagram-accessing. - (line 12) -* data: BLOX.BEmbeddedImage-accessing. +* data <1>: BLOX.BEmbeddedImage-accessing. (line 11) -* data_ <1>: TCP.Datagram-accessing. - (line 15) -* data_ <2>: TCP.Datagram class-instance creation. +* data: TCP.Datagram-accessing. + (line 12) +* data_ <1>: TCP.Datagram class-instance creation. (line 6) -* data_ <3>: BLOX.BEmbeddedImage-accessing. +* data_ <2>: BLOX.BEmbeddedImage-accessing. (line 16) +* data_ <3>: TCP.Datagram-accessing. + (line 15) * data_: BLOX.BImage-image management. (line 9) * data_address_port_: TCP.Datagram class-instance creation. (line 9) * debuggerClass: Debugger class-disabling debugging. (line 6) -* deepCopy <1>: BLOX.BCanvasObject-accessing. +* deepCopy <1>: BLOX.Blox-basic. (line 6) +* deepCopy: BLOX.BCanvasObject-accessing. (line 42) -* deepCopy: BLOX.Blox-basic. (line 6) -* default <1>: I18N.Locale class-instance creation. - (line 6) -* default <2>: I18N.LocaleData class-accessing. +* default <1>: I18N.LocaleData class-accessing. (line 9) -* default: I18N.LocaleConventions class-accessing. +* default <2>: I18N.LocaleConventions class-accessing. (line 9) +* default: I18N.Locale class-instance creation. + (line 6) * defaultAddressClass: TCP.AbstractSocket class-defaults. (line 6) * defaultAddressClass_: TCP.AbstractSocket class-defaults. @@ -3545,9 +3551,9 @@ (line 32) * defaultWidth_: BLOX.BForm-accessing. (line 39) -* description <1>: I18N.IncompleteSequenceError-accessing. +* description <1>: I18N.InvalidCharsetError-accessing. (line 6) -* description <2>: I18N.InvalidCharsetError-accessing. +* description <2>: I18N.IncompleteSequenceError-accessing. (line 6) * description: I18N.InvalidSequenceError-accessing. (line 6) @@ -3555,16 +3561,16 @@ (line 23) * destroy: BLOX.Blox-widget protocol. (line 16) -* destroyed <1>: BLOX.BImage-widget protocol. +* destroyed <1>: BLOX.BDialog-widget protocol. + (line 12) +* destroyed <2>: BLOX.BCanvas-widget protocol. + (line 18) +* destroyed <3>: BLOX.BEdit-widget protocol. (line 6) -* destroyed <2>: BLOX.BEdit-widget protocol. +* destroyed <4>: BLOX.BImage-widget protocol. (line 6) -* destroyed <3>: BLOX.BRadioGroup-widget protocol. +* destroyed: BLOX.BRadioGroup-widget protocol. (line 6) -* destroyed <4>: BLOX.BDialog-widget protocol. - (line 12) -* destroyed: BLOX.BCanvas-widget protocol. - (line 18) * directory: BLOX.BImage class-small icons. (line 6) * dispatchEvents: BLOX.Blox class-event dispatching. @@ -3583,16 +3589,16 @@ (line 39) * dither: BLOX.BImage-image management. (line 13) -* do_ <1>: DBI.Connection-querying. - (line 6) -* do_ <2>: BLOX.BList-accessing. +* do_ <1>: BLOX.BList-accessing. (line 68) -* do_ <3>: I18N.EncodedString-accessing. +* do_ <2>: DBI.Connection-querying. + (line 6) +* do_ <3>: BLOX.BCanvas-widget protocol. + (line 22) +* do_ <4>: I18N.EncodedString-accessing. (line 18) -* do_ <4>: BLOX.BDropDown-list box accessing. +* do_: BLOX.BDropDown-list box accessing. (line 56) -* do_: BLOX.BCanvas-widget protocol. - (line 22) * domain_: I18N.LcMessages-opening MO files. (line 11) * domain_localeDirectory_: I18N.LcMessages-opening MO files. @@ -3619,10 +3625,10 @@ (line 51) * elements: BLOX.BList-accessing. (line 71) -* elements_ <1>: BLOX.BList-accessing. - (line 75) -* elements_: BLOX.BDropDown-list box accessing. +* elements_ <1>: BLOX.BDropDown-list box accessing. (line 59) +* elements_: BLOX.BList-accessing. + (line 75) * emacsLike: BLOX.BText class-accessing. (line 6) * emacsLike_: BLOX.BText class-accessing. @@ -3635,30 +3641,30 @@ (line 26) * enabled_: BLOX.Blox-widget protocol. (line 31) -* encoding <1>: I18N.EncodedString-accessing. - (line 21) -* encoding: I18N.EncodedStringFactory-instance creation. +* encoding <1>: I18N.EncodedStringFactory-instance creation. (line 6) -* encoding_ <1>: I18N.EncodedStringFactory-instance creation. - (line 9) -* encoding_ <2>: I18N.EncodedStream class-instance creation. +* encoding: I18N.EncodedString-accessing. + (line 21) +* encoding_ <1>: I18N.EncodedStream class-instance creation. (line 6) -* encoding_ <3>: I18N.EncodedString-initializing. +* encoding_ <2>: I18N.EncodedString-initializing. (line 6) -* encoding_: I18N.EncodedStringFactory class-instance creation. +* encoding_ <3>: I18N.EncodedStringFactory class-instance creation. (line 6) +* encoding_: I18N.EncodedStringFactory-instance creation. + (line 9) * encoding_as_: I18N.EncodedStream class-instance creation. (line 11) * endAngle: BLOX.BArc-accessing. (line 6) * endAngle_: BLOX.BArc-accessing. (line 10) -* ensureReadable <1>: TCP.OOBSocketImpl-implementation. - (line 9) -* ensureReadable: TCP.AbstractSocketImpl-asynchronous operations. +* ensureReadable <1>: TCP.AbstractSocketImpl-asynchronous operations. (line 6) -* ensureWriteable <1>: TCP.Socket-stream protocol. - (line 23) -* ensureWriteable: TCP.AbstractSocketImpl-asynchronous operations. +* ensureReadable: TCP.OOBSocketImpl-implementation. + (line 9) +* ensureWriteable <1>: TCP.AbstractSocketImpl-asynchronous operations. (line 10) +* ensureWriteable: TCP.Socket-stream protocol. + (line 27) * evalIn_tcl_: BLOX.Blox class-C call-outs. (line 6) * events: BLOX.BTextAttributes-setting attributes. @@ -3683,10 +3689,10 @@ (line 36) * exp: Complex-transcendental functions. (line 21) -* extent <1>: BLOX.BBoundingBox-accessing. - (line 27) -* extent: BLOX.BWidget-geometry management. +* extent <1>: BLOX.BWidget-geometry management. (line 101) +* extent: BLOX.BBoundingBox-accessing. + (line 27) * extent_ <1>: BLOX.BWidget-geometry management. (line 104) * extent_: BLOX.BBoundingBox-accessing. @@ -3720,7 +3726,7 @@ * fileOp_with_with_with_ifFail_: TCP.AbstractSocketImpl-socket operations. (line 47) * fill <1>: TCP.Socket-stream protocol. - (line 27) + (line 31) * fill: TCP.ReadBuffer-buffer handling. (line 12) * fillBlock_: TCP.ReadBuffer-buffer handling. @@ -3746,64 +3752,64 @@ * floor: Complex-converting. (line 27) * flush <1>: I18N.LcMessagesDomain-handling the cache. (line 6) -* flush <2>: TCP.AbstractSocket-accessing. - (line 24) -* flush <3>: I18N.Locale class-instance creation. - (line 10) -* flush <4>: TCP.WriteBuffer-buffer handling. +* flush <2>: TCP.Socket-stream protocol. + (line 34) +* flush <3>: I18N.LcMessagesMoFileVersion0-flushing the cache. (line 6) -* flush <5>: TCP.SocketAddress class-initialization. - (line 20) -* flush <6>: I18N.LocaleData class-accessing. +* flush <4>: I18N.LocaleData class-accessing. (line 13) -* flush <7>: I18N.LcMessagesMoFileVersion0-flushing the cache. +* flush <5>: TCP.WriteBuffer-buffer handling. (line 6) -* flush <8>: ZLib.ZlibWriteStream-streaming. +* flush <6>: ZLib.ZlibWriteStream-streaming. + (line 20) +* flush <7>: TCP.AbstractSocket-accessing. + (line 24) +* flush <8>: I18N.Locale class-instance creation. + (line 10) +* flush: TCP.SocketAddress class-initialization. (line 20) -* flush: TCP.Socket-stream protocol. - (line 30) * flushBlock_: TCP.WriteBuffer-buffer handling. (line 9) * flushBuffer: ZLib.ZlibWriteStream-streaming. (line 24) * flushDictionary: ZLib.ZlibWriteStream-streaming. (line 27) -* font <1>: BLOX.BLabel-accessing. - (line 38) -* font <2>: BLOX.BDropDown-accessing. - (line 32) -* font <3>: BLOX.BEmbeddedText-accessing. - (line 6) -* font <4>: BLOX.BButton-accessing. - (line 27) -* font <5>: BLOX.BText-accessing. +* font <1>: BLOX.BEdit-accessing. (line 33) -* font <6>: BLOX.BTextAttributes-setting attributes. +* font <2>: BLOX.BEmbeddedText-accessing. + (line 6) +* font <3>: BLOX.BDropDown-accessing. + (line 32) +* font <4>: BLOX.BTextAttributes-setting attributes. (line 31) -* font <7>: BLOX.BEdit-accessing. +* font <5>: BLOX.BButton-accessing. + (line 27) +* font <6>: BLOX.BText-accessing. (line 33) -* font: BLOX.BList-accessing. +* font <7>: BLOX.BList-accessing. (line 79) -* font_ <1>: BLOX.BTextAttributes-setting attributes. +* font: BLOX.BLabel-accessing. + (line 38) +* font_ <1>: BLOX.BDropDownEdit-accessing. + (line 12) +* font_ <2>: BLOX.BDropDownList-accessing. + (line 14) +* font_ <3>: BLOX.BTextAttributes-setting attributes. (line 52) -* font_ <2>: BLOX.BText-accessing. +* font_ <4>: BLOX.BEdit-accessing. (line 56) -* font_ <3>: BLOX.BEdit-accessing. +* font_ <5>: BLOX.BEmbeddedText-accessing. + (line 29) +* font_ <6>: BLOX.BList-accessing. + (line 102) +* font_ <7>: BLOX.BLabel-accessing. + (line 61) +* font_ <8>: BLOX.BText-accessing. (line 56) -* font_ <4>: BLOX.BButton-accessing. - (line 50) -* font_ <5>: BLOX.BTextAttributes class-instance-creation shortcuts. +* font_ <9>: BLOX.BTextAttributes class-instance-creation shortcuts. (line 36) -* font_ <6>: BLOX.BDropDownList-accessing. - (line 14) -* font_ <7>: BLOX.BDropDownEdit-accessing. - (line 12) -* font_ <8>: BLOX.BLabel-accessing. - (line 61) -* font_ <9>: BLOX.BList-accessing. - (line 102) -* font_ <10>: BLOX.BEmbeddedText-accessing. - (line 29) +* font_ <10>: BLOX.BButton-accessing. + (line 50) * font_: BLOX.BDropDown-accessing. (line 58) * fontHeight_: BLOX.Blox-widget protocol. @@ -3816,52 +3822,52 @@ (line 125) * foregroundColor <2>: BLOX.BLabel-accessing. (line 84) -* foregroundColor <3>: BLOX.BTextAttributes-setting attributes. - (line 73) -* foregroundColor <4>: BLOX.BMenuObject-accessing. +* foregroundColor <3>: BLOX.BMenuObject-accessing. (line 53) -* foregroundColor <5>: BLOX.BEdit-accessing. +* foregroundColor <4>: BLOX.BEdit-accessing. (line 79) -* foregroundColor <6>: BLOX.BImage-accessing. - (line 46) -* foregroundColor <7>: BLOX.BButton-accessing. +* foregroundColor <5>: BLOX.BText-accessing. + (line 79) +* foregroundColor <6>: BLOX.BButton-accessing. (line 73) -* foregroundColor <8>: BLOX.BCanvas-accessing. - (line 18) -* foregroundColor <9>: BLOX.BProgress-accessing. +* foregroundColor <7>: BLOX.BProgress-accessing. (line 22) -* foregroundColor <10>: BLOX.BText-accessing. - (line 79) -* foregroundColor: BLOX.BDropDown-accessing. +* foregroundColor <8>: BLOX.BDropDown-accessing. (line 84) +* foregroundColor <9>: BLOX.BImage-accessing. + (line 46) +* foregroundColor <10>: BLOX.BCanvas-accessing. + (line 18) +* foregroundColor: BLOX.BTextAttributes-setting attributes. + (line 73) * foregroundColor_ <1>: BLOX.BCanvas-accessing. (line 24) -* foregroundColor_ <2>: BLOX.BLabel-accessing. - (line 90) -* foregroundColor_ <3>: BLOX.BTextAttributes-setting attributes. +* foregroundColor_ <2>: BLOX.BTextAttributes-setting attributes. (line 80) -* foregroundColor_ <4>: BLOX.BList-accessing. - (line 131) -* foregroundColor_ <5>: BLOX.BTextAttributes class-instance-creation shortcuts. +* foregroundColor_ <3>: BLOX.BTextAttributes class-instance-creation shortcuts. (line 57) -* foregroundColor_ <6>: BLOX.BImage-accessing. +* foregroundColor_ <4>: BLOX.BDropDownList-accessing. + (line 37) +* foregroundColor_ <5>: BLOX.BImage-accessing. (line 52) -* foregroundColor_ <7>: BLOX.BButton-accessing. +* foregroundColor_ <6>: BLOX.BProgress-accessing. + (line 27) +* foregroundColor_ <7>: BLOX.BDropDownEdit-accessing. + (line 35) +* foregroundColor_ <8>: BLOX.BButton-accessing. (line 79) -* foregroundColor_ <8>: BLOX.BEdit-accessing. - (line 85) * foregroundColor_ <9>: BLOX.BText-accessing. (line 85) -* foregroundColor_ <10>: BLOX.BDropDownList-accessing. - (line 37) -* foregroundColor_ <11>: BLOX.BMenuObject-accessing. +* foregroundColor_ <10>: BLOX.BLabel-accessing. + (line 90) +* foregroundColor_ <11>: BLOX.BList-accessing. + (line 131) +* foregroundColor_ <12>: BLOX.BMenuObject-accessing. (line 59) -* foregroundColor_ <12>: BLOX.BDropDownEdit-accessing. - (line 35) -* foregroundColor_ <13>: BLOX.BProgress-accessing. - (line 27) -* foregroundColor_: BLOX.BDropDown-accessing. +* foregroundColor_ <13>: BLOX.BDropDown-accessing. (line 93) +* foregroundColor_: BLOX.BEdit-accessing. + (line 85) * from: BLOX.BArc-accessing. (line 23) * from_: BLOX.BArc-accessing. (line 26) * from_to_: BLOX.BArc-accessing. (line 29) @@ -3871,20 +3877,20 @@ (line 11) * fromDSN_: DBI.ConnectionInfo class-instance creation. (line 6) -* fromSockAddr_port_ <1>: TCP.IPAddress class-instance creation. -