Exemple #1
0
    def __init__(self, config):
        """
        :param config pych.Config: pyChapel configuration
        """

        self.hints = {}  # Decorator hints are stored here
        self.arrays = {}  # Array mappings
        self.compilers = {}  # Backend compilers
        self.specializers = {}  # Sourcecode generators/specializers

        self.object_store = ObjectStore(  # Init object-store
            config["object_store"])
        if config["open_ahead"]:
            self.object_store.open_ahead()

        for compiler in config["compilers"]:  # Init compilers
            self.compilers[compiler] = Compiler(config["compilers"][compiler])

        for slang in config["specializers"]["templates"]:  # Init specializers
            self.specializers[slang] = get_specializer(slang)(
                config["specializers"]["templates"][slang],
                config["specializers"]["sfiles"][slang],
                config["specializers"]["bfiles"][slang])