private static CMakeItemDeclarations CreateLanguageDeclarations(
            CMakeCommandId id, ParseRequest req, Source source,
            List <string> priorParameters)
        {
            CMakeLanguageDeclarations decls =
                new CMakeLanguageDeclarations(req.FileName);

            decls.FindIncludeFiles();
            return(decls);
        }
        private static List <string> GetStandardVariables(CMakeVariableType type)
        {
            List <string> vars = new List <string>();

            switch (type)
            {
            case CMakeVariableType.Variable:
            case CMakeVariableType.CacheVariable:
                // All cache variables also serve as ordinary CMake variables, but not
                // the other way around.
                if (type == CMakeVariableType.Variable)
                {
                    vars.AddRange(_standardVariables);
                }
                vars.AddRange(_standardCacheVariables);
                string path = CMakePath.FindCMakeModules();
                if (path != null)
                {
                    IEnumerable <string> languages =
                        CMakeLanguageDeclarations.GetLanguagesFromDir(path);
                    foreach (string language in languages)
                    {
                        if (type == CMakeVariableType.Variable)
                        {
                            vars.AddRange(_standardLangVariables.Select(
                                              x => string.Format(x, language)));
                        }
                        vars.AddRange(_standardLangCacheVariables.Select(
                                          x => string.Format(x, language)));
                    }
                }
                break;

            case CMakeVariableType.EnvVariable:
                vars.AddRange(_standardEnvVariables);
                break;
            }
            return(vars);
        }
 private static CMakeItemDeclarations CreateLanguageDeclarations(
     CMakeCommandId id, ParseRequest req, Source source,
     List<string> priorParameters)
 {
     CMakeLanguageDeclarations decls =
         new CMakeLanguageDeclarations(req.FileName);
     decls.FindIncludeFiles();
     return decls;
 }