text: #ifndef PARAMETERS_H
  #define PARAMETERS_H
  
  #include "netlist_writer.h"
  
  namespace fasm {
  
  // Utility class emit parameters from eblif
  class Parameters {
   public:
    // Adds a parameter mapping between an eblif parameter (e.g. .param <param> <value>)
    // to FASM feature.
    void AddParameter(const std::string &eblif_parameter, const std::string &fasm_feature);
  
    // Return a FASM feature directive for the given parameter and value.
    std::string EmitFasmFeature(const std::string &eblif_parameter, const std::string &value);
   private:
    struct FeatureParameter {
        size_t width;
        std::string feature;
    };
  
    std::unordered_multimap<std::string, FeatureParameter> features_;
  
    size_t FeatureWidth(const std::string &feature) const;
  };
  
  } // namespace fasm
  
  #endif  // PARAMETERS_H
  