1.1 Getting started with Topaz
Overview of a GemStone Session
Remote Versus Linked Versions
Invoking Topaz
Topaz Commands
Logging In to GemStone
Logging In Linked
Logging In RPC
Setting Up a Login Initialization File .topazini
Error handling and output
Alternatives to automatic initialization
Special care needed when setting gemnetid in .topazini
Multiple Concurrent GemStone Sessions
Multiple sessions in the RPC version of Topaz
Multiple sessions in the Linked version of Topaz
Topaz sessions vs. GemStone sessions
Transaction state
Other Types of Logins
X509-Secured
Solo Logins
Object creation and memory use
Solo login with external connection to a running stone
Multiple Execution Environments
1.2 Interacting with Topaz
Help Command
Interrupting Topaz and GemStone
Logging Out
Leaving Topaz
1.3 Executing GemStone Smalltalk Expressions
Strings vs. Unicode strings
Controlling the Display of Results
Display Level
Setting Limits on Object Displays
Displaying Variable Names, OOPs, and Byte Values
Committing and Aborting Transactions
Importing files: topaz commands and GemStone code
Handling text outside the ASCII range
Capturing Your Topaz Session In a File
Writing to multiple log files
Invoking Operating System Functionality from Topaz
1.4 Using Topaz for Code Development
Creating Methods
Using a Text Editor to Edit Methods
Listing Methods, Categories, and other information
Filing Out Classes and Methods
Code outside the ASCII range
1.5 Advanced Topaz features
Structural Access To Objects
Examining Instance Variables with Structural Access
Specifying Objects
Object Specification Formats
Topaz Variables
Creating Variables
Displaying Current Variable Definitions
Clearing Variable Definitions
Sending Messages
Standard and Solo logins
2.1 Topaz scripting
Creating a script
Security Concerns
2.2 Scripting with topaz she-bang
2.3 Script Arguments
Passing arguments using bash scripts
2.4 SuperDoit
Script Types
Script structure
Commonly Used Sections
Complex Scripting
Rowan Support
Script Comments
Arguments
Standard arguments
Defining Script Arguments
Arguments to Topaz
Usage
Coding in the doit section
Output
Examples and Templates
$GEMSTONE/examples/superDoit/
Rowan-specific GsCommands examples
3.1 Step Points and Breakpoints
Breakpoints
3.2 Examining the GemStone Smalltalk Call Stack
Proceeding After a Breakpoint
Select a Context for Examination and Debugging
Multiple Call Stacks
3.3 Debugging from a different session
waitForDebug
Debugging
Manual setup of remote debugging
Enabling the debugging thread
Determining the OOP of executing session’s process
Executing session waiting for debug
Example
ABORT
ALLSTACKS
BEGIN
BREAK
CATEGORY
CLASSMETHOD
COMMIT
CONTINUE/C
DEBUGGEM
DEBUGRUN
DEFINE
DETACH
DISASSEM
DISPLAY
DOIT
DOWN
DUMPOBJ
EDIT
ENV
ERRORCOUNT
EXEC
EXIT
EXITIFNOERROR
EXPECTBUG
EXPECTERROR
EXPECTVALUE
FILEFORMAT
FILEOUT
FR_1
FR_CLS
FRAME
GCITRACE
HELP
HIERARCHY
HISTORY
IFERR
IFERR_CLEAR
IFERR_LIST
IFERROR
IMPLEMENTORS
INPUT
INSPECT
INTERP
KILL
LEVEL
LIMIT
LIST
LISTW / L
LITERALS
LOADUA
LOGIN
LOGOUT
LOGOUTIFLOGGEDIN
LOOKUP
METHOD
NBRESULT
NBRUN
NBSTEP
OBJ1 / OBJ2
OBJ1Z / OBJ2Z
OBJECT
OMIT
OUTPUT
PAUSEFORDEBUG
PKGLOOKUP
POLLFORSIGNAL
PRINTIT
PROTECTMETHODS
QUIT
RELEASEALL
REMARK
REMOVEALLCLASSMETHODS
REMOVEALLMETHODS
RESUME
RUN
RUNBLOCK
RUNENV envId
SEND
SENDERS
SET
SHELL
STACK
STATUS
STEP
STK
STRINGS
STRINGSIC
SUBCLASSES
SUBHIERARCHY
TEMPORARY
TFILE
THREAD
THREADS
TIME
TMETHOD
TOPAZWAITFORDEBUG
UNPROTECTMETHODS
UP
WHERE