/// <summary> /// Registers a function that assigns a fixed memory specification /// to a particular type of intrinsic. /// </summary> /// <param name="intrinsicName"> /// The name of the intrinsic to assign the memory /// specifications to. /// </param> /// <param name="memorySpec"> /// The memory specification for all intrinsic prototypes with /// name <paramref name="intrinsicName"/>. /// </param> public void Register(string intrinsicName, MemorySpecification memorySpec) { store.Register(intrinsicName, memorySpec); }
/// <summary> /// Maps a particular type of instruction prototype /// to a memory specification. /// </summary> /// <param name="memorySpec"> /// The memory specification to register. /// </param> /// <typeparam name="T"> /// The type of instruction prototypes to which /// <paramref name="memorySpec"/> is applicable. /// </typeparam> public void Register <T>(MemorySpecification memorySpec) where T : InstructionPrototype { store.Register <T>(memorySpec); }