Skip to content
Snippets Groups Projects
  1. Sep 10, 2010
  2. Sep 08, 2010
  3. Aug 27, 2010
  4. Aug 20, 2010
  5. Jun 17, 2010
  6. May 30, 2010
  7. May 05, 2010
  8. Mar 20, 2010
  9. Mar 12, 2010
  10. Jan 10, 2010
  11. Oct 11, 2009
  12. Oct 06, 2009
  13. Sep 17, 2009
    • Douglas Gregor's avatar
      Initial implementation of a code-completion interface in Clang. In · 81b747b7
      Douglas Gregor authored
      essence, code completion is triggered by a magic "code completion"
      token produced by the lexer [*], which the parser recognizes at
      certain points in the grammar. The parser then calls into the Action
      object with the appropriate CodeCompletionXXX action.
      
      Sema implements the CodeCompletionXXX callbacks by performing minimal
      translation, then forwarding them to a CodeCompletionConsumer
      subclass, which uses the results of semantic analysis to provide
      code-completion results. At present, only a single, "printing" code
      completion consumer is available, for regression testing and
      debugging. However, the design is meant to permit other
      code-completion consumers.
      
      This initial commit contains two code-completion actions: one for
      member access, e.g., "x." or "p->", and one for
      nested-name-specifiers, e.g., "std::". More code-completion actions
      will follow, along with improved gathering of code-completion results
      for the various contexts.
      
      [*] In the current -code-completion-dump testing/debugging mode, the
      file is truncated at the completion point and EOF is translated into
      "code completion".
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82166 91177308-0d34-0410-b5e6-96231b3b80d8
      81b747b7
  14. Aug 20, 2009
  15. Aug 11, 2009
  16. Jul 18, 2009
  17. Jul 15, 2009
  18. Jun 04, 2009
  19. May 15, 2009
  20. Apr 19, 2009
  21. Mar 27, 2009
  22. Mar 25, 2009
  23. Mar 17, 2009
  24. Feb 27, 2009
  25. Feb 17, 2009
  26. Jan 14, 2009
    • Douglas Gregor's avatar
      Refactor name lookup. · eb11cd07
      Douglas Gregor authored
      This change refactors and cleans up our handling of name lookup with
      LookupDecl. There are several aspects to this refactoring:
      
        - The criteria for name lookup is now encapsulated into the class
        LookupCriteria, which replaces the hideous set of boolean values
        that LookupDecl currently has.
      
        - The results of name lookup are returned in a new class
        LookupResult, which can lazily build OverloadedFunctionDecls for
        overloaded function sets (and, eventually, eliminate the need to
        allocate member for OverloadedFunctionDecls) and contains a
        placeholder for handling ambiguous name lookup (for C++).
      
        - The primary entry points for name lookup are now LookupName (for
          unqualified name lookup) and LookupQualifiedName (for qualified
          name lookup). There is also a convenience function
          LookupParsedName that handles qualified/unqualified name lookup
          when given a scope specifier. Together, these routines are meant
          to gradually replace the kludgy LookupDecl, but this won't happen
          until after we have base class lookup (which forces us to cope
          with ambiguities).
      
        - Documented the heck out of name lookup. Experimenting a little
          with using Doxygen's member groups to make some sense of the Sema
          class. Feedback welcome!
      
        - Fixes some lingering issues with name lookup for
        nested-name-specifiers, which now goes through
        LookupName/LookupQualifiedName. 
      
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62245 91177308-0d34-0410-b5e6-96231b3b80d8
      eb11cd07
  27. Dec 05, 2008
  28. Nov 11, 2008
  29. Oct 26, 2008
Loading