예제 #1
0
        /// <summary>
        /// Permet de retourner une liste des constructeurs par defaut des classes presentes dans le fichier
        /// </summary>
        /// <param name="doc"></param>
        /// <param name="nsmgr"></param>
        /// <returns></returns>
        public static List <ConstructeurParDefaut> ConstructeursParDefaut(XmlDocument doc, XmlNamespaceManager nsmgr)
        {
            List <List <ParametreEntrant> > parametresEntrants     = ParametreEntrant.GetParametresEntrantsConstructeurParDefautClasse(doc, nsmgr);
            List <ConstructeurParDefaut>    constructeursParDefaut = new List <ConstructeurParDefaut>();
            List <string> descriptions = GetDescriptionContrainteParDefaut(doc, nsmgr);
            List <string> algorithmes  = GetAlgorithmeContrainteParDefaut(doc, nsmgr);

            for (int i = 0; i < Classe.NombreClasses(doc, nsmgr); i++)
            {
                constructeursParDefaut.Add(new ConstructeurParDefaut(descriptions[i], parametresEntrants[i], algorithmes[i]));
            }
            return(constructeursParDefaut);
        }
예제 #2
0
        /// <summary>
        /// Fonction qui renvoie la liste de toutes les prorietes dynamiques des classes
        /// </summary>
        /// <param name="doc"></param>
        /// <param name="nsmgr"></param>
        /// <returns></returns>
        public static List <List <Methode> > Methodes(XmlDocument doc, XmlNamespaceManager nsmgr)
        {
            List <List <Methode> >          proprietesDynamiques = new List <List <Methode> >();
            List <List <string> >           nomsMethodes         = NomsMethodesClasses(doc, nsmgr);
            List <string>                   descriptionsMethodes = DescriptionsMethodesClasses(doc, nsmgr);
            List <string>                   algorithmesMethodes  = AlgorithmesMethodesClasses(doc, nsmgr);
            List <List <TypeRetour> >       typesRetour          = TypeRetour.TypeRetourMethodesClasses(doc, nsmgr);
            List <List <ParametreEntrant> > parametresEntrants   = ParametreEntrant.ParametresEntrantsMethodesClasses(doc, nsmgr);

            for (int i = 1; i < Classe.NombreClasses(doc, nsmgr) + 1; i++)
            {
                if (NombreMethodesClasse(doc, nsmgr)[i - 1] != 0)
                {
                    List <Methode> methodesClasse = new List <Methode>();

                    for (int cmp = 0; cmp < NombreMethodesClasse(doc, nsmgr)[i - 1]; cmp++)
                    {
                        methodesClasse.Add(new Methode(nomsMethodes[i - 1][cmp], descriptionsMethodes[cmp], parametresEntrants[cmp], algorithmesMethodes[cmp], typesRetour[cmp]));
                    }
                    proprietesDynamiques.Add(methodesClasse);
                }
            }
            return(proprietesDynamiques);
        }