示例#1
0
 /// <summary>
 /// Retourne la liste des variables inutilisées mais déclarées
 /// Ignore dans la réponse les variables rattachées à des collections, car potentiellement usitées par d'autres projets
 /// </summary>
 /// <param name="environment">Le nom de l'environnement</param>
 /// <returns>La liste des noms de variables inutilisées</returns>
 public List <string> GetUnusedVariabledForEnvironment(string environment)
 {
     if (!DeclaredVariablesByEnvironment.Keys.Contains(environment))
     {
         return(new List <string>());
     }
     return(DeclaredVariablesByEnvironment[environment]
            .Where(v => v.Origin.Equals(VarOrigin.AppVar))
            .Where(v => !UsedVariables.Any(uv => uv.Name.Equals(v.Name)))
            .Select(v => v.Name)
            .ToList());
 }
示例#2
0
        public void AddToUsedVar(string matchValue, VarUsage usage, string context = null)
        {
            var varName = Regex.Replace(matchValue, varPattern, "$1");

            if (UsedVariables.Any(v => v.Name.Equals(varName)))
            {
                var variable = UsedVariables.Single(v => v.Name.Equals(varName));
                variable.Usage = variable.Usage & usage;
                variable.Context.Add(context);
            }
            else
            {
                UsedVariables.Add(new ProcessVar(varName, usage, context));
            }
        }