func Load(ls *persist.LoadSaver) core.Matcher { if !ls.LoadBool() { return nil } le := ls.LoadSmallInt() var ext map[string][]int if le > 0 { ext = make(map[string][]int) for i := 0; i < le; i++ { k := ls.LoadString() r := make([]int, ls.LoadSmallInt()) for j := range r { r[j] = ls.LoadSmallInt() } ext[k] = r } } globs := ls.LoadStrings() globIdx := make([][]int, ls.LoadSmallInt()) for i := range globIdx { globIdx[i] = ls.LoadInts() } return &Matcher{ extensions: ext, globs: globs, globIdx: globIdx, } }
func Load(ls *persist.LoadSaver) core.Matcher { if !ls.LoadBool() { return nil } 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 }
func Load(ls *persist.LoadSaver) *Base { return &Base{ name: ls.LoadString(), details: ls.LoadString(), multi: config.Multi(ls.LoadTinyInt()), zipDefault: ls.LoadBool(), gids: loadIndexes(ls), mids: loadIndexes(ls), cids: loadIndexes(ls), xids: loadIndexes(ls), bids: loadIndexes(ls), rids: loadIndexes(ls), tids: loadIndexes(ls), } }
func Load(ls *persist.LoadSaver) core.Identifier { i := &Identifier{} i.infos = make(map[string]formatInfo) le := ls.LoadSmallInt() for j := 0; j < le; j++ { i.infos[ls.LoadString()] = formatInfo{ ls.LoadString(), ls.LoadBool(), ls.LoadInts(), ls.LoadInts(), } } i.Base = identifier.Load(ls) return i }
// Load loads a Matcher. func Load(ls *persist.LoadSaver) core.Matcher { if !ls.LoadBool() { return nil } return &Matcher{ keyFrames: loadKeyFrames(ls), tests: loadTests(ls), bofFrames: loadFrameSet(ls), eofFrames: loadFrameSet(ls), bofSeq: loadSeqSet(ls), eofSeq: loadSeqSet(ls), knownBOF: ls.LoadInt(), knownEOF: ls.LoadInt(), maxBOF: ls.LoadInt(), maxEOF: ls.LoadInt(), priorities: priority.Load(ls), mu: &sync.Mutex{}, } }
func loadTests(ls *persist.LoadSaver) []*testTree { l := ls.LoadSmallInt() ret := make([]*testTree, l) for i := range ret { ret[i] = &testTree{} ret[i].complete = make([]keyFrameID, ls.LoadSmallInt()) for j := range ret[i].complete { ret[i].complete[j][0] = ls.LoadSmallInt() ret[i].complete[j][1] = ls.LoadSmallInt() } ret[i].incomplete = make([]followUp, ls.LoadSmallInt()) for j := range ret[i].incomplete { ret[i].incomplete[j].kf[0] = ls.LoadSmallInt() ret[i].incomplete[j].kf[1] = ls.LoadSmallInt() ret[i].incomplete[j].l = ls.LoadBool() ret[i].incomplete[j].r = ls.LoadBool() } ret[i].maxLeftDistance = ls.LoadInt() ret[i].maxRightDistance = ls.LoadInt() ret[i].left = loadTestNodes(ls) ret[i].right = loadTestNodes(ls) } return ret }