]> granicus.if.org Git - onig/commitdiff
refactoring
authorK.Kosako <kosako@sofnec.co.jp>
Fri, 24 Aug 2018 00:56:40 +0000 (09:56 +0900)
committerK.Kosako <kosako@sofnec.co.jp>
Fri, 24 Aug 2018 00:56:40 +0000 (09:56 +0900)
src/make_unicode_property_data.py

index 8dd11b8407f903e02ef6b8662aeddd1c3eeb2b6d..105cb248a8e2c464a2de488777cb9cc1c40bc6c0 100755 (executable)
@@ -1,7 +1,7 @@
 #!/usr/bin/python
 # -*- coding: utf-8 -*-
 # make_unicode_property_data.py
-# Copyright (c) 2016-2017  K.Kosako
+# Copyright (c) 2016-2018  K.Kosako
 
 import sys
 import re
@@ -31,6 +31,7 @@ DIC  = { }
 KDIC = { }
 PropIndex = { }
 PROPERTY_NAME_MAX_LEN = 0
+PROPS = None
 
 def normalize_prop_name(name):
   name = re.sub(r'[ _]', '', name)
@@ -405,6 +406,12 @@ def entry_and_print_prop_and_index(name, index):
   nname = normalize_prop_name(name)
   print_prop_and_index(nname, index)
 
+def parse_and_merge_properties(path, klass):
+  dic, props = parse_properties(path, klass)
+  merge_dic(DIC, dic)
+  merge_props(PROPS, props)
+  return dic, props
+
 ### main ###
 argv = sys.argv
 argc = len(argv)
@@ -424,18 +431,11 @@ with open('UnicodeData.txt', 'r') as f:
 PROPS = DIC.keys()
 PROPS = list_sub(PROPS, POSIX_LIST)
 
-dic, props = parse_properties('DerivedCoreProperties.txt', 'Derived Property')
-merge_dic(DIC, dic)
-merge_props(PROPS, props)
-
-dic, props = parse_properties('Scripts.txt', 'Script')
-merge_dic(DIC, dic)
-merge_props(PROPS, props)
+dic, props = parse_and_merge_properties('DerivedCoreProperties.txt', 'Derived Property')
+dic, props = parse_and_merge_properties('Scripts.txt', 'Script')
 DIC['Unknown'] = inverse_ranges(add_ranges_in_dic(dic))
+dic, props = parse_and_merge_properties('PropList.txt', 'Binary Property')
 
-dic, props = parse_properties('PropList.txt', 'Binary Property')
-merge_dic(DIC, dic)
-merge_props(PROPS, props)
 PROPS.append('Unknown')
 KDIC['Unknown'] = 'Script'