/// <summary> /// Adiciona un nuevo tipo a la clase codigo /// </summary> /// <param name="typeCodeName"></param> /// <param name="type"></param> public void AddTypeBuilder(string typeCodeName, Type type) { if (DefinedType.ContainsKey(typeCodeName)) { throw new ArgumentException("Un tipo con ese nombre ya fue declarado en el codigo"); } DefinedType.Add(typeCodeName, type); }
/// <summary> /// Devuelve un tipo dado su nombre. Si el tipo no esta definido se crea solamente con el nombre /// </summary> /// <param name="typeCodeName"></param> /// <returns></returns> public Type GetTypeBuilderMaybeNotCreated(string typeCodeName) { if (DefinedType.ContainsKey(typeCodeName)) { return(DefinedType[typeCodeName]); } DefinedType.Add(typeCodeName, Module.DefineType(typeCodeName)); return(DefinedType[typeCodeName]); }