Exemplo n.º 1
0
 /// <summary>
 /// Crea una entrada, amb una arrel, un paradigma i informació extra.
 /// La informació extra es pot referir a excepcions, origen de la paraula, etc.
 /// Per defecte, les entrades tenen la marca '000'.
 /// </summary>
 /// <param name="identificador">L'objecte que identifica el paradigma al qual pertany l'entrada.</param>
 /// <param name="dades">Informació sobre l'entrada</param>
 public Entrada(Identificador identificador, Dictionary<string, string> dades)
 {
     this.dades = dades;
     this.excepcions = null;
     this.identificador = identificador;
     marques = null;
 }
Exemplo n.º 2
0
 private static void AplicaModel(Dictionary<string, string> dades, out Dictionary<string, string> excepcions,
     string[] model, LiniaMarques lmExcepcions, Marques filtre)
 {
     dades["ent"] = AplicaModel(dades["ent"], model);
     dades["arrel"] = AplicaModel(dades["arrel"], model);
     List<string> originals = new List<string>();
     for (int i = 1; i < model.Length; i += 2)
         originals.Add(model[i]);
     string oo = String.Join("|", originals.ToArray());
     Regex cerca = new Regex(string.Format("(^|[=/ ])({0})", oo));
     lmExcepcions = lmExcepcions.AplicaModel(cerca, model);
     excepcions = lmExcepcions.Valors(filtre);
 }
 public override void NovaExcepcio(string ent, LiniaMarques contingut, FitxerFont fitxerFont, int liniaFitxerFont)
 {
     if (excepcions.ContainsKey(ent))
         throw new Exception("Excepció repetida: " + ent);
     excepcions[ent] = new InfoExcepcio(contingut, fitxerFont, liniaFitxerFont);
 }