NAME
Client module - the client module for the GUI or CLI client
VERSION
version 1.001
METHODS
refreshData
return all data necessary to display a debugger screen. This contains :
* the breakpoints list ('effectiveBreakpoints' key)
* the informations for all processe ('processesInfo' key)
An exemple data structure will be as follows :
HASH
 'effectiveBreakpoints' => HASH
    '/path/to/my/source/file.pl' => HASH  #here are the breakpoints for this file
       11 => 13
       13 => 13
       9 => 9
 'processesInfo' => HASH
    8603 => HASH      #below are the informations for process 9603
       'fileContent' => ARRAY  #here is the source code of current file
          0  'use strict;'
          1  'use warnings;'
          2  'use Time::HiRes qw(usleep nanosleep);'
          3  ''
          4  '#this dummy script is just a test program to manipulate with the debugger'
          5  ''
          6  'sub dummySubroutine($){'
          7  '    my ($value) = @_;'
          8  '    return $value++;'
          9  '}'
       'fileName' => '/path/to/my/scriptToDebug.pl' #name of current source file
       'finished' => 0  #if 1, program is finished
       'halted' => 1    #if 1, program is haltes, can set brekpoints 
                        #or inspect variables
       'lastEvalCommand' => '' #last command that was executed with "eval"
       'lastEvalResult' => ''  #result of the last "eval" command
       'line' => 13            #current line in the source file
       'name' => undef
       'package' => 'main'     #current package name
       'pid' => 8603           #pid
       'result' => undef      
       'stackTrace' => ARRAY   #stack trace
            empty array
       'subroutine' => 'main'  #subroutine name
       'variables' => HASH     #variables list
            empty hash
    8607 => HASH               "and so on for next process..."
       'fileContent' => ARRAY
          ....
step
step($pid) : send the step command to the processus of pid $pid Return the debug informations
breakpoint
breakpoint($file,$line) : set breakpoint in $file at $line
removeBreakPoint
removeBreakPoint($file,$line)
run
run() : continue program execution until breakpoint
suspend
suspend the running process
return
return($pid,$returnedValue) : cause script of pid $pid to return of current subroutine. Optionnaly you can specify the value returned with $returnedValue.
eval
eval($pid,$expression) : eval perl code contained into $expression in the script of pid $pid. The result will be send later into the lastEvalResult key of the data structure of refreshDate
SEE ALSO
AUTHOR
Jean-Christian HASSLER <hasslerjeanchristian at gmail.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2012 by Jean-Christian HASSLER.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.