func BenchmarkParseUnicodeClass(b *testing.B) {
	input := []byte("a = [\\p{Latin}]")
	b.ResetTimer()

	for i := 0; i < b.N; i++ {
		if _, err := Parse("", input); err != nil {
			b.Fatal(err)
		}
	}
}
// With Unicode classes in the grammar:
// BenchmarkParseUnicodeClass          2000            548233 ns/op           96615 B/op        978 allocs/op
//
// With Unicode classes in a go map:
// BenchmarkParseUnicodeClass          5000            272224 ns/op           37990 B/op        482 allocs/op
With Unicode classes in the grammar:
BenchmarkParseUnicodeClass          2000            548233 ns/op           96615 B/op        978 allocs/op

With Unicode classes in a go map:
BenchmarkParseUnicodeClass          5000            272224 ns/op           37990 B/op        482 allocs/op
// With Unicode classes in the grammar : // BenchmarkParseUnicodeClass 2000 548233 ns / op 96615 B / op 978 allocs / op // // With Unicode classes in a go map : // BenchmarkParseUnicodeClass 5000 272224 ns / op 37990 B / op 482 allocs / op
func BenchmarkParseUnicodeClass(b *testing.B) {
	input := []byte("a = [\\p{Latin}]")
	b.ResetTimer()
	for i := 0; i < b.N; i++ {
		if _, err := Parse("", input); err != nil {
			b.Fatal(err)
		}
	}
}
func BenchmarkParseUnicodeClass ( b * testing . B ) { input := [ ] byte ( " \\ " ) b . ResetTimer ( ) for i := 0 ; i < b . N ; i ++ { if _ , err := Parse ( " " , input ) ; err != nil { b . Fatal ( err ) } } }
With Unicode classes in the grammar:
BenchmarkParseUnicodeClass          2000            548233 ns/op           96615 B/op        978 allocs/op
With Unicode classes in the grammar : BenchmarkParseUnicodeClass 2000 548233 ns / op 96615 B / op 978 allocs / op