本文整理汇总了Golang中github.com/yob/pdfreader/fancy.Reader.UnreadByte方法的典型用法代码示例。如果您正苦于以下问题:Golang Reader.UnreadByte方法的具体用法?Golang Reader.UnreadByte怎么用?Golang Reader.UnreadByte使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/yob/pdfreader/fancy.Reader
的用法示例。
在下文中一共展示了Reader.UnreadByte方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: proceed
func proceed(i *TypeOneI, rdr fancy.Reader) {
for !i.Done {
t, _ := ps.Token(rdr)
// fmt.Printf("Stack: %v\n", util.StringArray(i.St.Dump()));
// fmt.Printf("--- %s\n", t);
if len(t) < 1 {
break
}
b, _ := rdr.ReadByte()
if b > 32 {
rdr.UnreadByte()
}
if len(t) == 0 {
break
}
if d, ok := find(i, "/"+string(t)); ok {
if d[0] == '{' {
proceed(i, fancy.SliceReader(d[1:len(d)-1]))
} else {
i.St.Push(d)
}
} else if f, ok := Ops[string(t)]; ok {
f(i)
} else {
i.St.Push(t)
}
}
return
}
示例2: SkipLE
func SkipLE(f fancy.Reader) {
for {
c, err := f.ReadByte()
if err != nil {
return
}
if c > 32 {
f.UnreadByte()
return
}
if c == 13 {
c, err = f.ReadByte()
if err == nil && c != 10 {
f.UnreadByte()
}
return
}
if c == 10 {
return
}
}
}
示例3: Token
func Token(f fancy.Reader) ([]byte, int64) {
again:
c := skipSpaces(f)
if c == 0 {
return []byte{}, -1
}
p := fpos(f) - 1
switch c {
case '%':
skipComment(f)
goto again
case '<', '[', '{':
skipComposite(f)
case '(':
skipString(f)
default:
if skipToDelim(f) != 255 {
f.UnreadByte()
}
}
n := int(fpos(f) - p)
f.Seek(p, 0)
return f.Slice(n), p
}