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

            decls.FindIncludeFiles();
            if (_commandKeywords.ContainsKey(id))
            {
                decls.AddItems(_commandKeywords[id],
                               CMakeItemDeclarations.ItemType.Command);
            }
            if (id == CMakeCommandId.AddExecutable || id == CMakeCommandId.AddLibrary)
            {
                // Exclude all files that already appear in the parameter list, except
                // for the first token, which is the name of the executable to be
                // generated.
                decls.ExcludeItems(priorParameters.Skip(1));
            }
            return(decls);
        }
 private static CMakeItemDeclarations CreateSourceDeclarations(CMakeCommandId id,
     ParseRequest req, Source source, List<string> priorParameters)
 {
     CMakeSourceDeclarations decls = new CMakeSourceDeclarations(req.FileName);
     decls.FindIncludeFiles();
     if (_commandKeywords.ContainsKey(id))
     {
         decls.AddItems(_commandKeywords[id],
             CMakeItemDeclarations.ItemType.Command);
     }
     if (id == CMakeCommandId.AddExecutable || id == CMakeCommandId.AddLibrary)
     {
         // Exclude all files that already appear in the parameter list, except
         // for the first token, which is the name of the executable to be
         // generated.
         decls.ExcludeItems(priorParameters.Skip(1));
     }
     return decls;
 }