本文整理匯總了Golang中github.com/richardlehane/siegfried/pkg/core/persist.LoadSaver類的典型用法代碼示例。如果您正苦於以下問題:Golang LoadSaver類的具體用法?Golang LoadSaver怎麽用?Golang LoadSaver使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了LoadSaver類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: save
func (fs *frameSet) save(ls *persist.LoadSaver) {
ls.SaveSmallInt(len(fs.set))
for _, f := range fs.set {
f.Save(ls)
}
ls.SaveInts(fs.testTreeIndex)
}
示例2: Save
// Save persists the pattern.
func (c Choice) Save(ls *persist.LoadSaver) {
ls.SaveByte(choiceLoader)
ls.SaveSmallInt(len(c))
for _, pat := range c {
pat.Save(ls)
}
}
示例3: loadWildMin
func loadWildMin(ls *persist.LoadSaver) Frame {
return WildMin{
OffType(ls.LoadByte()),
ls.LoadInt(),
patterns.Load(ls),
}
}
示例4: loadFixed
func loadFixed(ls *persist.LoadSaver) Frame {
return Fixed{
OffType(ls.LoadByte()),
ls.LoadInt(),
patterns.Load(ls),
}
}
示例5: saveTestNodes
func saveTestNodes(ls *persist.LoadSaver, tns []*testNode) {
ls.SaveSmallInt(len(tns))
for _, n := range tns {
n.Frame.Save(ls)
ls.SaveInts(n.success)
saveTestNodes(ls, n.tests)
}
}
示例6: loadRBMH
func loadRBMH(ls *persist.LoadSaver) Pattern {
rbmh := &RBMHSequence{}
rbmh.Seq = Sequence(ls.LoadBytes())
for i := range rbmh.Shift {
rbmh.Shift[i] = ls.LoadSmallInt()
}
return rbmh
}
示例7: loadBMH
func loadBMH(ls *persist.LoadSaver) Pattern {
bmh := &BMHSequence{}
bmh.Seq = Sequence(ls.LoadBytes())
for i := range bmh.Shift {
bmh.Shift[i] = ls.LoadSmallInt()
}
return bmh
}
示例8: loadList
func loadList(ls *persist.LoadSaver) Pattern {
le := ls.LoadSmallInt()
list := make(List, le)
for i := range list {
list[i] = Load(ls)
}
return list
}
示例9: loadChoice
func loadChoice(ls *persist.LoadSaver) Pattern {
l := ls.LoadSmallInt()
choices := make(Choice, l)
for i := range choices {
choices[i] = Load(ls)
}
return choices
}
示例10: Load
func Load(ls *persist.LoadSaver) Matcher {
ret := make(Matcher, ls.LoadTinyUInt())
for i := range ret {
ret[i] = loadCM(ls)
ret[i].ctype = ctypes[ret[i].conType]
ret[i].entryBufs = siegreader.New()
}
return ret
}
示例11: Load
// Load a frame from a persist.LoadSaver
func Load(ls *persist.LoadSaver) Frame {
id := ls.LoadByte()
l := loaders[int(id)]
if l == nil {
if ls.Err == nil {
ls.Err = errors.New("bad frame loader")
}
return nil
}
return l(ls)
}
示例12: LoadIdentifier
// LoadIdentifier applies the appropriate IdentifierLoader to load an identifier.
func LoadIdentifier(ls *persist.LoadSaver) Identifier {
id := ls.LoadByte()
l := loaders[int(id)]
if l == nil {
if ls.Err == nil {
ls.Err = errors.New("bad identifier loader")
}
return nil
}
return l(ls)
}
示例13: save
func (c *ContainerMatcher) save(ls *persist.LoadSaver) {
ls.SaveInts(c.startIndexes)
ls.SaveTinyUInt(int(c.conType))
saveCTests(ls, c.nameCTest)
ls.SaveInts(c.parts)
c.priorities.Save(ls)
ls.SaveString(c.extension)
}
示例14: loadTestNodes
func loadTestNodes(ls *persist.LoadSaver) []*testNode {
l := ls.LoadSmallInt()
if l == 0 {
return nil
}
ret := make([]*testNode, l)
for i := range ret {
ret[i] = &testNode{
frames.Load(ls),
ls.LoadInts(),
loadTestNodes(ls),
}
}
return ret
}
示例15: saveCTests
func saveCTests(ls *persist.LoadSaver, ct map[string]*cTest) {
ls.SaveSmallInt(len(ct))
for k, v := range ct {
ls.SaveString(k)
ls.SaveInts(v.satisfied)
ls.SaveInts(v.unsatisfied)
v.bm.Save(ls)
}
}