Last change
on this file since 331 was 331, checked in by coas-nagasima, 6 years ago |
prototoolに関連するプロジェクトをnewlibからmuslを使うよう変更・更新
ntshellをnewlibの下位の実装から、muslのsyscallの実装に変更・更新
以下のOSSをアップデート
・mruby-1.3.0
・musl-1.1.18
・onigmo-6.1.3
・tcc-0.9.27
以下のOSSを追加
・openssl-1.1.0e
・curl-7.57.0
・zlib-1.2.11
以下のmrbgemsを追加
・iij/mruby-digest
・iij/mruby-env
・iij/mruby-errno
・iij/mruby-iijson
・iij/mruby-ipaddr
・iij/mruby-mock
・iij/mruby-require
・iij/mruby-tls-openssl
|
-
Property svn:eol-style
set to
native
-
Property svn:mime-type
set to
text/x-csrc;charset=UTF-8
|
File size:
1.2 KB
|
Rev | Line | |
---|
[270] | 1 | /*
|
---|
| 2 | ** cmdrun.c - mruby debugger run command functions
|
---|
| 3 | **
|
---|
| 4 | */
|
---|
| 5 |
|
---|
[331] | 6 | #include <mruby/opcode.h>
|
---|
[270] | 7 | #include "mrdb.h"
|
---|
| 8 |
|
---|
| 9 | dbgcmd_state
|
---|
| 10 | dbgcmd_run(mrb_state *mrb, mrdb_state *mrdb)
|
---|
| 11 | {
|
---|
| 12 | mrb_debug_context *dbg = mrdb->dbg;
|
---|
| 13 |
|
---|
[331] | 14 | if (dbg->xm == DBG_INIT){
|
---|
[270] | 15 | dbg->xm = DBG_RUN;
|
---|
[331] | 16 | }
|
---|
| 17 | else {
|
---|
[270] | 18 | dbg->xm = DBG_QUIT;
|
---|
[331] | 19 | if (dbg->xphase == DBG_PHASE_RUNNING){
|
---|
[270] | 20 | struct RClass *exc;
|
---|
| 21 | puts("Start it from the beginning.");
|
---|
| 22 | exc = mrb_define_class(mrb, "DebuggerRestart", mrb_class_get(mrb, "Exception"));
|
---|
| 23 | mrb_raise(mrb, exc, "Restart mrdb.");
|
---|
| 24 | }
|
---|
| 25 | }
|
---|
[331] | 26 |
|
---|
[270] | 27 | return DBGST_RESTART;
|
---|
| 28 | }
|
---|
| 29 |
|
---|
| 30 | dbgcmd_state
|
---|
| 31 | dbgcmd_continue(mrb_state *mrb, mrdb_state *mrdb)
|
---|
| 32 | {
|
---|
| 33 | mrb_debug_context *dbg = mrdb->dbg;
|
---|
| 34 | int ccnt = 1;
|
---|
| 35 |
|
---|
[331] | 36 | if (mrdb->wcnt > 1){
|
---|
[270] | 37 | sscanf(mrdb->words[1], "%d", &ccnt);
|
---|
| 38 | }
|
---|
| 39 | dbg->ccnt = (uint16_t)(ccnt > 0 ? ccnt : 1); /* count of continue */
|
---|
| 40 |
|
---|
[331] | 41 | if (dbg->xphase == DBG_PHASE_AFTER_RUN){
|
---|
[270] | 42 | puts("The program is not running.");
|
---|
| 43 | dbg->xm = DBG_QUIT;
|
---|
[331] | 44 | }
|
---|
| 45 | else {
|
---|
[270] | 46 | dbg->xm = DBG_RUN;
|
---|
| 47 | }
|
---|
| 48 | return DBGST_CONTINUE;
|
---|
| 49 | }
|
---|
| 50 |
|
---|
| 51 | dbgcmd_state
|
---|
| 52 | dbgcmd_step(mrb_state *mrb, mrdb_state *mrdb)
|
---|
| 53 | {
|
---|
| 54 | mrdb->dbg->xm = DBG_STEP;
|
---|
| 55 | return DBGST_CONTINUE;
|
---|
| 56 | }
|
---|
[331] | 57 |
|
---|
| 58 | dbgcmd_state
|
---|
| 59 | dbgcmd_next(mrb_state *mrb, mrdb_state *mrdb)
|
---|
| 60 | {
|
---|
| 61 | mrdb->dbg->xm = DBG_NEXT;
|
---|
| 62 | mrdb->dbg->prvci = mrb->c->ci;
|
---|
| 63 | return DBGST_CONTINUE;
|
---|
| 64 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.