• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Golang printer.Interface类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Golang中github.com/h8liu/d8/printer.Interface的典型用法代码示例。如果您正苦于以下问题:Golang Interface类的具体用法?Golang Interface怎么用?Golang Interface使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



在下文中一共展示了Interface类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。

示例1: PrintTo

func (self *Packet) PrintTo(p printer.Interface) {
	p.Printf("#%d %s", self.Id, flagString(self.Flag))
	p.Printf("ques %v", self.Question)
	self.Answer.PrintNameTo(p, "answ")
	self.Authority.PrintNameTo(p, "auth")
	self.Addition.PrintNameTo(p, "addi")
}
开发者ID:h8liu,项目名称:d8,代码行数:7,代码来源:packet.go


示例2: printTimeTaken

func (self *Exchange) printTimeTaken(p printer.Interface) {
	d := self.Recv.Timestamp.Sub(self.Send.Timestamp)
	n := d.Nanoseconds()
	var s string
	if n < 1e3 {
		s = fmt.Sprintf("%dns", n)
	} else if n < 1e6 {
		s = fmt.Sprintf("%.1fus", float64(n)/1e3)
	} else if n < 1e9 {
		s = fmt.Sprintf("%.2fms", float64(n)/1e6)
	} else {
		s = fmt.Sprintf("%.3fs", float64(n)/1e9)
	}

	p.Printf("(in %v)", s)
}
开发者ID:h8liu,项目名称:d8,代码行数:16,代码来源:exchange.go


示例3: printSend

func (self *Exchange) printSend(p printer.Interface) {
	p.Printf("%s {", self.Query.String())
	p.ShiftIn()

	switch self.PrintFlag {
	case PrintAll:
		p.Print("send {")
		p.ShiftIn()
		self.Send.PrintTo(p)
		p.ShiftOut("}")
	case PrintReply:
		// do nothing
	default:
		panic("unknown print flag")
	}
}
开发者ID:h8liu,项目名称:d8,代码行数:16,代码来源:exchange.go


示例4: PrintNameTo

func (self Section) PrintNameTo(p printer.Interface, name string) {
	if self == nil {
		return
	}
	if len(self) == 0 {
		return
	}

	if len(self) == 1 {
		p.Printf("%s %v", name, self[0])
	} else {
		p.Printf("%s {", name)
		p.ShiftIn()
		self.PrintTo(p)
		p.ShiftOut("}")
	}
}
开发者ID:h8liu,项目名称:d8,代码行数:17,代码来源:section.go


示例5: PrintTo

func (self *Info) PrintTo(p printer.Interface) {
	if len(self.Cnames) > 0 {
		p.Print("cnames {")
		p.ShiftIn()
		for _, r := range self.Cnames {
			p.Printf("%v -> %v", r.Domain, rdata.ToDomain(r.Rdata))
		}
		p.ShiftOut("}")
	}

	if len(self.Results) == 0 {
		p.Print("(unresolvable)")
	} else {
		p.Print("ips {")
		p.ShiftIn()

		for _, r := range self.Results {
			d := r.Domain
			ip := rdata.ToIPv4(r.Rdata)
			if d.Equal(self.Domain) {
				p.Printf("%v", ip)
			} else {
				p.Printf("%v(%v)", ip, d)
			}
		}

		p.ShiftOut("}")
	}

	if len(self.NameServers) > 0 {
		p.Print("servers {")
		p.ShiftIn()

		for _, ns := range self.NameServers {
			p.Printf("%v", ns)
		}

		p.ShiftOut("}")
	}

	if len(self.Records) > 0 {
		p.Print("records {")
		p.ShiftIn()

		for _, rr := range self.Records {
			p.Printf("%v", rr.Digest())
		}

		p.ShiftOut("}")
	}
}
开发者ID:h8liu,项目名称:d8,代码行数:51,代码来源:info.go


示例6: printRecv

func (self *Exchange) printRecv(p printer.Interface) {
	switch self.PrintFlag {
	case PrintAll:
		if self.Recv != nil {
			p.Print("recv {")
			p.ShiftIn()
			self.Recv.PrintTo(p)
			p.ShiftOut("}")
		}

		if self.Error != nil {
			p.Printf("error %v", self.Error)
		}
	case PrintReply:
		if self.Recv != nil {
			self.Recv.Packet.PrintTo(p)
			self.printTimeTaken(p)
		}
		if self.Error != nil {
			p.Printf("error %v", self.Error)
		}
	default:
		panic("unknown print flag")
	}

	p.ShiftOut("}")
}
开发者ID:h8liu,项目名称:d8,代码行数:27,代码来源:exchange.go


示例7: PrintTo

func (self *Message) PrintTo(p printer.Interface) {
	p.Printf("@%s", addrString(self.RemoteAddr))
	self.Packet.PrintTo(p)
}
开发者ID:h8liu,项目名称:d8,代码行数:4,代码来源:message.go


示例8: PrintTo

func (self Section) PrintTo(p printer.Interface) {
	for _, rr := range self {
		p.Print(rr)
	}
}
开发者ID:h8liu,项目名称:d8,代码行数:5,代码来源:section.go



注:本文中的github.com/h8liu/d8/printer.Interface类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Golang doozer.DialUri函数代码示例发布时间:2022-05-23
下一篇:
Golang page.Page类代码示例发布时间:2022-05-23
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap