]> code.delx.au - gnu-emacs-elpa/blobdiff - company-clang.el
Handle function pointers in annotation and template expansion
[gnu-emacs-elpa] / company-clang.el
index 4929bad414561050e7f8fee7afe36b98ef85340e..0c4252eff46407572b7451b21e97ecbc3757b868 100644 (file)
@@ -144,6 +144,18 @@ or automatically through a custom `company-clang-prefix-guesser'."
   (get-text-property 0 'meta candidate))
 
 (defun company-clang--annotation (candidate)
+  (let ((ann (company-clang--annotation-1 candidate)))
+    (if (not (string-prefix-p "(*)" ann))
+        ann
+      (with-temp-buffer
+        (insert ann)
+        (search-backward ")")
+        (let ((pt (1+ (point))))
+          (forward-symbol 1)
+          (delete-region pt (point)))
+        (buffer-string)))))
+
+(defun company-clang--annotation-1 (candidate)
   (let ((meta (company-clang--meta candidate)))
     (cond
      ((null meta) nil)