package parser

import (
	"git.jfdev.de/JonasFranzDEV/hal/hal"
)

func getModulesFromConfig(config *hal.ClusterConfig) (modules map[string]*hal.Module, err error) {
	// all modules with their name as key
	modules = make(map[string]*hal.Module)

	for _, node := range config.Nodes {
		program, err := ParseFile(node.Program)
		if err != nil {
			return nil, err
		}
		modules[node.Name], err = hal.NewHALModule(program, 256, 0, false)
		if err != nil {
			return nil, err
		}
	}
	return
}