intl/locale/props2arrays.py
author Birunthan Mohanathas <birunthan@mohanathas.com>
Thu, 24 Jul 2014 10:56:38 -0700
changeset 218934 b79894a533bcd2c5b742f55e0de9eff40d8b86c3
parent 98983 intl/locale/src/props2arrays.py@f4157e8c410708d76703f19e4dfb61859bfe32d8
child 258774 0645b0eeb7202ee9e3aa0a0fe90b2affabbc79bc
permissions -rw-r--r--
Bug 1038537 - Part 3: Flatten intl/locale/src/ directory. r=smontagu

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

import sys

mappings = {}
  
propFile = open(sys.argv[1], "r");
  
for line in propFile:
  line = line.strip()
  if not line.startswith('#'):
    parts = line.split("=", 1)
    if len(parts) == 2 and len(parts[0]) > 0:
      mappings[parts[0].strip()] = parts[1].strip()
 
propFile.close()

keys = mappings.keys()
keys.sort()

hFile = open(sys.argv[2], "w");

hFile.write("// This is a generated file. Please do not edit.\n")
hFile.write("// Please edit the corresponding .properties file instead.\n")

first = 1
for key in keys:
  if first:
    first = 0
  else:
    hFile.write(',\n')
  hFile.write('{ "%s", "%s", (const char*)NS_INT32_TO_PTR(%d) }' 
              % (key, mappings[key], len(mappings[key])));
hFile.write('\n')
hFile.flush()
hFile.close()