This class is used internally by InterSystems IRIS. You should not make direct use of it within your applications. There is no guarantee made about either the behavior or future operation of this class.
private method %OnClose() as %Status [ Language = objectscript ]
Inherited description: This callback method is invoked by the %Close() method to
provide notification that the current object is being closed.
The return value of this method is ignored.
private method %OnNew(initval As %RawString = "") as %Status [ Language = objectscript ]
Inherited description: This callback method is invoked by the %New() method to
provide notification that a new instance of an object is being created.
If this method returns an error then the object will not be created.
It is passed the arguments provided in the %New call.
When customizing this method, override the arguments with whatever variables and types you expect to receive from %New().
For example, if you're going to call %New, passing 2 arguments, %OnNew's signature could be:
Method %OnNew(dob as %Date = "", name as %Name = "") as %Status
If instead of returning a %Status code this returns an oref and this oref is a subclass of the current
class then this oref will be the one returned to the caller of %New method.
method Attach(pid As %String = "", project As Project = "") as %Status [ Language = objectscript ]
Attach to another process having process id of pid.
Fails if already attached (use Unattach() first),or
if pid is invalid.
On successful completion, process is attached and a break issued.
The process will be in break mode upon completion of its current operation.
method AttachToCSP(id As %Integer, project As Project = "") as %Status [ Language = objectscript ]
Attach to a CSP process, first you must call the GetCSPAttachID()
to obtain the ID to pass to this method.
method Break() as %Boolean [ Language = objectscript ]
Send a BREAK to the target process.
A successful return indicates the target will be in break mode
on completion of the current command.
Issue IsStopped to determine if target is in break mode.
method ClearBreakpoints() as %Boolean [ Language = objectscript ]
method DBGCommand(cmd As %String, IsSys As %Integer = 0) as %Boolean [ Language = objectscript ]
method DisableWatchpoint(variable As %String, counter As %Integer) as %Boolean [ Language = objectscript ]
private method Error(err As %String) as %Integer [ Language = objectscript ]
error routine
method Eval(expr As %String = "") as %String [ Language = objectscript ]
Evaluate and return the value of expression
expr within the target process.
method GetCSPAttachID() as %Integer [ Language = objectscript ]
To attach to a CSP process, first call this method which will return you a unique
ID number. Then display the CSP page but add an extra parameter of 'CSPDEBUG=<ID>'
for example 'http://localhost/csp/samples/loop.csp?CSPDEBUG=123456'. Then call the
AttachToCSP() method which will attach to the process that is
running this CSP page.
classmethod GetInfo(Job As %Integer, Pid As %Integer) as %String [ Language = objectscript ]
Gather information about a process
method GetOffset(ByRef RoutineName As %String, ByRef BeginCmdLine As %Integer, ByRef BeginCmdOffset As %Integer, ByRef EndCmdLine As %Integer, ByRef EndCmdOffset As %Integer, ByRef BeginArgLine As %Integer, ByRef BeginArgOffset As %Integer, ByRef EndArgLine As %Integer, ByRef EndArgOffset As %Integer, ByRef NameSpace As %String) as %Integer [ Language = objectscript ]
Return the current location of the debugger. This includes both the command and the argument
positions.
method GetSource() as %String [ Language = objectscript ]
Return the routine source at the current location
method GetStack() as %String [ Language = objectscript ]
Gets the simple stack information sent from the target.
method GetStackId() as %String [ Language = objectscript ]
Requests stack variable info.
method GetValue(variable As %String = "", ByRef value As %String) as %Boolean [ Language = objectscript ]
Gets the value of a variable.
method Go() as %Boolean [ Language = objectscript ]
Continue the current process
method GoTo(tag As %String) as %Boolean [ Language = objectscript ]
Return the list of source files that the position passed in maps to.
Each source file is separated by a space character.
The format of each source file data is:
method MappedOffset(ByRef mapping As %String, ByRef namespace As %String, ByRef flag As %String) as %Status [ Language = objectscript ]
Return the list of source files that the current break point maps to starting with the INT/BAS routine.
Each source file is separated by a space character.
The format of each source file data is:
Given INT routine name and line number and offset in this line return an array of source lines
that map to this INT line. The format of this return array is:
Where StartEnd is 1 for the start of the map and 2 for the end, sourceName is the name of the
source file, sourceLabel is the method/label name, sourceLine is the number of lines from
this label to the location, Offset is the offset on the line, Namespace is the location
of the source file.
method StartTarget(tag As %String, StartOption As %Boolean = 0, project As Project = "") as %Status [ Language = objectscript ]
Job off a routine that executes tag.
If breakpoints are specified, the target will halt at the first breakpoint.
method Step() as %Boolean [ Language = objectscript ]
method StepIn() as %Boolean [ Language = objectscript ]
method StepOut() as %Boolean [ Language = objectscript ]
private method TranslateMvb(ByRef tag As %String) as %Boolean [ Language = objectscript ]
method Unattach(kill As %Boolean) as %Status [ Language = objectscript ]
Unattach from the current process, if any.
Returns $$$OK if successful, $$$ERROR if nothing to detach from
method ViewAsBinary(variableName As %String) as %String [ Language = objectscript ]
classmethod WatchListClose(ByRef qHandle As %Binary) as %Status [ Language = objectscript ]
classmethod WatchListExecute(ByRef qHandle As %Binary, deb As %Integer, Watch As %String(MAXLEN=1024)) as %Status [ Language = objectscript ]
classmethod WatchListFetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0) as %Status [ Language = objectscript ]
classmethod WatchListOrefClose(ByRef qHandle As %Binary) as %Status [ Language = objectscript ]
classmethod WatchListOrefExecute(ByRef qHandle As %Binary, deb As %Integer, Watch As %String(MAXLEN=256)) as %Status [ Language = objectscript ]
classmethod WatchListOrefFetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0) as %Status [ Language = objectscript ]
method WriteTarget(data As %String) as %Boolean [ Language = objectscript ]
Get the properties of the specified variable whose value is an oref.
%Studio.General::DumpObjectExecute implements logic to dump object
and collect properties in qHandle array. WatchList query from %Studio.Debugger to deliver array to client.