[cfe-commits] [PATCH 2/2] [clang.py] Implement Token API
Manuel Klimek
klimek at google.com
Sun Jul 1 23:48:12 PDT 2012
+ lib.clang_tokenize(tu, extent, byref(tokens_memory),
+ byref(tokens_count))
Strange indent. Hm, after reading further I see that that kind of indent is
quite common. Is there a guideline for how to indent this?
+ @staticmethod
+ def register(value, name):
+ """Register a new TokenKind enumeration.
+
+This should only be called at module load time by code within this
+package.
+"""
Indent.
--- /dev/null
+++ b/bindings/python/clang/enumerations.py
+TokenKinds = [
+ ('PUNCTUATION', 0),
+ ('KEYWORD', 1),
+ ('IDENTIFIER', 2),
+ ('LITERAL', 3),
+ ('COMMENT', 4),
+]
This doesn't seem to match the comment. Those "TokenKinds" are different
from what I see in clang/Basic/TokenKinds.def. Am I missing something?
Cheers,
/Manuel
On Sat, Jun 30, 2012 at 4:16 AM, Gregory Szorc <gregory.szorc at gmail.com>wrote:
> Updated patch attached.
>
> * Added Cursor.get_tokens()
> * Refactored TokenGroup out of TranslationUnit to support above
> * Refactored with TranslationUnit.get_* API changes from last patch.
>
> On Fri, Jun 29, 2012 at 12:18 AM, Gregory Szorc <gregory.szorc at gmail.com>
> wrote:
> > This exposes all of libclang's token functions in the Python bindings.
> >
> > I'm putting the TokenKind enumerations in a new module,
> > clang.enumerations. I plan to eventually move all existing
> > enumerations there so they are all consolidated. And, maybe one day,
> > we can even generate that file automatically by parsing the libclang
> > header files. I know Anders has code around somewhere that does
> > this...
> >
> > ---
> > bindings/python/clang/cindex.py | 177
> +++++++++++++++++++--
> > bindings/python/clang/enumerations.py | 32 ++++
> > bindings/python/tests/cindex/test_token_kind.py | 43 +++++
> > bindings/python/tests/cindex/test_tokens.py | 52 ++++++
> > .../python/tests/cindex/test_translation_unit.py | 24 ++-
> > 5 files changed, 312 insertions(+), 16 deletions(-)
> > create mode 100644 bindings/python/clang/enumerations.py
> > create mode 100644 bindings/python/tests/cindex/test_token_kind.py
> > create mode 100644 bindings/python/tests/cindex/test_tokens.py
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20120702/7088586a/attachment.html>
More information about the cfe-commits
mailing list