aboutsummaryrefslogtreecommitdiff
path: root/compiler/ucd_table.go.tmpl
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/ucd_table.go.tmpl')
-rw-r--r--compiler/ucd_table.go.tmpl43
1 files changed, 43 insertions, 0 deletions
diff --git a/compiler/ucd_table.go.tmpl b/compiler/ucd_table.go.tmpl
new file mode 100644
index 0000000..a364191
--- /dev/null
+++ b/compiler/ucd_table.go.tmpl
@@ -0,0 +1,43 @@
+// Code generated by {{ .GeneratorName }}; DO NOT EDIT.
+
+package compiler
+
+import "github.com/nihei9/maleeni/ucd"
+
+// https://www.unicode.org/reports/tr44/#GC_Values_Table
+var compositGeneralCategories = map[string][]string{
+ // Cased_Letter
+ "lc": {"lu", "ll", "lt"},
+ // Letter
+ "l": {"lu", "ll", "lt", "lm", "lo"},
+ // Mark
+ "m": {"mm", "mc", "me"},
+ // Number
+ "n": {"nd", "nl", "no"},
+ // Punctuation
+ "p": {"pc", "pd", "ps", "pi", "pe", "pf", "po"},
+ // Symbol
+ "s": {"sm", "sc", "sk", "so"},
+ // Separator
+ "z": {"zs", "zl", "zp"},
+ // Other
+ "c": {"cc", "cf", "cs", "co", "cn"},
+}
+
+// https://www.unicode.org/Public/13.0.0/ucd/PropertyAliases.txt
+var propertyNameAbbs = map[string]string{
+ "generalcategory": "gc",
+ "gc": "gc",
+}
+
+// https://www.unicode.org/Public/13.0.0/ucd/PropertyValueAliases.txt
+var generalCategoryValueAbbs = map[string]string{ {{ range $long, $abb := .PropertyValueAliases.GeneralCategory }}
+ "{{ $long }}": "{{ $abb }}",{{ end }}
+}
+
+// https://www.unicode.org/Public/13.0.0/ucd/UnicodeData.txt
+var generalCategoryCodePoints = map[string][]*ucd.CodePointRange{ {{ range $propName, $codePoints := .UnicodeData.GeneralCategory }}
+ "{{ $propName }}": { {{ range $codePoints }}
+ &ucd.CodePointRange{From: rune({{ .From }}), To: rune({{ .To }})},{{ end }}
+ },{{ end }}
+}