示例#1
0
文件: etc.go 项目: cznic/c
func position(n cc.Node) token.Position {
	if pos := n.Pos(); pos.IsValid() {
		return xc.FileSet.Position(pos)
	}

	return token.Position{}
}
示例#2
0
文件: generator.go 项目: cznic/c
func importPath(n cc.Node) int {
	if strings.HasPrefix(xc.FileSet.Position(n.Pos()).Filename, ccgo.LibcIncludePath) {
		return ccgo.LibcImportPathID
	}

	return 0
}
示例#3
0
文件: job.go 项目: cznic/c
func (j *Job) pos(n cc.Node) token.Position {
	pos := n.Pos()
	if !pos.IsValid() {
		return token.Position{}
	}

	r := xc.FileSet.Position(pos)
	r.Filename = r.Filename[len(j.Root)+1:]
	return r
}