Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
HugeYuan
delve
提交
b35072f3
D
delve
项目概览
HugeYuan
/
delve
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
delve
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
b35072f3
编写于
5月 20, 2014
作者:
D
Derek Parker
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Respond to basic process commands
上级
8f5190cb
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
31 addition
and
6 deletion
+31
-6
main.go
main.go
+31
-6
未找到文件。
main.go
浏览文件 @
b35072f3
...
...
@@ -4,9 +4,11 @@ import (
"bufio"
"fmt"
"os"
"strconv"
"strings"
"github.com/Dparker1990/dbg/command"
"github.com/Dparker1990/dbg/proctl"
)
type
term
struct
{
...
...
@@ -14,16 +16,29 @@ type term struct {
}
func
main
()
{
var
(
t
=
newTerm
()
cmds
=
command
.
DebugCommands
()
)
t
:=
newTerm
()
if
len
(
os
.
Args
)
==
1
{
printStderrAndDie
(
"You must provide a pid
\n
"
)
}
pid
,
err
:=
strconv
.
Atoi
(
os
.
Args
[
1
])
if
err
!=
nil
{
printStderrAndDie
(
err
)
}
dbgproc
,
err
:=
proctl
.
NewDebugProcess
(
pid
)
if
err
!=
nil
{
printStderrAndDie
(
"Could not start debugging process:"
,
err
)
}
cmds
:=
command
.
DebugCommands
()
registerProcessCommands
(
cmds
,
dbgproc
)
for
{
cmdstr
,
err
:=
t
.
promptForInput
()
if
err
!=
nil
{
fmt
.
Fprint
(
os
.
Stderr
,
"Prompt for input failed."
)
os
.
Exit
(
1
)
printStderrAndDie
(
"Prompt for input failed.
\n
"
)
}
cmd
:=
cmds
.
Find
(
cmdstr
)
...
...
@@ -34,6 +49,16 @@ func main() {
}
}
func
printStderrAndDie
(
args
...
interface
{})
{
fmt
.
Fprint
(
os
.
Stderr
,
args
)
os
.
Exit
(
1
)
}
func
registerProcessCommands
(
cmds
*
command
.
Commands
,
proc
*
proctl
.
DebuggedProcess
)
{
cmds
.
Register
(
"step"
,
proc
.
Step
)
cmds
.
Register
(
"continue"
,
proc
.
Continue
)
}
func
newTerm
()
*
term
{
return
&
term
{
stdin
:
bufio
.
NewReader
(
os
.
Stdin
),
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录