示例#1
0
func main() {
	data := "20"
	ast, err := hammer.Parse(uint_10, []byte(data))

	if err != nil {
		log.Fatal(err)
	}

	fmt.Printf("%#v\n", ast)
}
示例#2
0
文件: bencode.go 项目: prevoty/hammer
func main() {
	data := "d1:Xi1e1:Yi2e1:Z5:helloe"
	//data := "i-10e"
	ast, err := hammer.Parse(bencode, []byte(data))

	if err != nil {
		log.Fatal(err)
	}

	err = json.NewEncoder(os.Stdout).Encode(ast)
	if err != nil {
		log.Fatal(err)
	}
}
示例#3
0
文件: base64.go 项目: prevoty/hammer
func main() {
	base64Parser := base64_parser()
	documentParser := hammer.Sequence(
		hammer.Whitespace(base64Parser),
		hammer.Whitespace(hammer.End()),
	)

	input := []byte("aGk=") // "hi"
	ast, err := hammer.Parse(documentParser, input)
	if err != nil {
		log.Println(err)
	}

	fmt.Printf("%#v\n", ast)
}
示例#4
0
文件: json.go 项目: prevoty/hammer
func main() {
	jsonParser := jsonParser_init()
	documentParser := hammer.Sequence(
		hammer.Whitespace(jsonParser),
		hammer.Whitespace(hammer.End()),
	)

	input := []byte("{\"name\":\"foo\",\"num\":100,\"balance\":1000.21,\"is_vip\":true,\"nickname\":null}")

	ast, err := hammer.Parse(documentParser, input)
	if err != nil {
		log.Println(err)
	}

	fmt.Printf("%#v\n", ast)
}