本文整理汇总了Golang中github.com/elves/elvish/store.Store.NextCmdSeq方法的典型用法代码示例。如果您正苦于以下问题:Golang Store.NextCmdSeq方法的具体用法?Golang Store.NextCmdSeq怎么用?Golang Store.NextCmdSeq使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/elves/elvish/store.Store
的用法示例。
在下文中一共展示了Store.NextCmdSeq方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: NewEditor
// NewEditor creates an Editor.
func NewEditor(file *os.File, sigs chan os.Signal, ev *eval.Evaler, st *store.Store) *Editor {
seq := -1
if st != nil {
var err error
seq, err = st.NextCmdSeq()
if err != nil {
// TODO(xiaq): Also report the error
seq = -1
}
}
prompt, rprompt := defaultPrompts()
ed := &Editor{
file: file,
writer: newWriter(file),
reader: NewReader(file),
sigs: sigs,
store: st,
evaler: ev,
cmdSeq: seq,
ps1: eval.NewPtrVariableWithValidator(prompt, MustBeFn),
rps1: eval.NewPtrVariableWithValidator(rprompt, MustBeFn),
abbreviations: make(map[string]string),
beforeReadLine: eval.NewPtrVariableWithValidator(
eval.NewList(), eval.IsListOfFnValue),
afterReadLine: eval.NewPtrVariableWithValidator(
eval.NewList(), eval.IsListOfFnValue),
}
ev.Editor = ed
ev.Modules["le"] = makeModule(ed)
return ed
}
示例2: newHistoryListing
func newHistoryListing(s *store.Store) (*historyListing, error) {
seq, err := s.NextCmdSeq()
if err != nil {
return nil, err
}
cmds, err := s.Cmds(seq-100, seq)
if err != nil {
return nil, err
}
return &historyListing{cmds}, nil
}
示例3: NewEditor
// NewEditor creates an Editor.
func NewEditor(file *os.File, sigs <-chan os.Signal, st *store.Store) *Editor {
seq := -1
if st != nil {
var err error
seq, err = st.NextCmdSeq()
if err != nil {
// TODO(xiaq): Also report the error
seq = -1
}
}
return &Editor{
file: file,
writer: newWriter(file),
reader: NewReader(file),
sigs: sigs,
store: st,
cmdSeq: seq,
}
}
示例4: newHistlist
func newHistlist(s *store.Store) (*histlist, error) {
if s == nil {
return nil, ErrStoreOffline
}
seq, err := s.NextCmdSeq()
if err != nil {
return nil, err
}
all, err := s.Cmds(0, seq)
if err != nil {
return nil, err
}
last := make(map[string]int)
for i, entry := range all {
last[entry] = i
}
hl := &histlist{all: all, last: last, indexWidth: len(strconv.Itoa(len(all) - 1))}
hl.listing = newListing(modeHistoryListing, hl)
return hl, nil
}
示例5: NewEditor
// NewEditor creates an Editor.
func NewEditor(file *os.File, sigs chan os.Signal, ev *eval.Evaler, st *store.Store) *Editor {
seq := -1
if st != nil {
var err error
seq, err = st.NextCmdSeq()
if err != nil {
// TODO(xiaq): Also report the error
seq = -1
}
}
ed := &Editor{
file: file,
writer: newWriter(file),
reader: NewReader(file),
sigs: sigs,
store: st,
evaler: ev,
cmdSeq: seq,
}
ev.Editor = ed
return ed
}