branch: elpa/swift-mode
commit 75aa2779140e2def455b1e6e8faab01e7ea93e8e
Author: ap4y <l...@pisem.net>
Commit: ap4y <l...@pisem.net>

    Add separate lexer rule for return type arrow symbol "->", prevent
    overlap with generics token
---
 swift-mode.el | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/swift-mode.el b/swift-mode.el
index e67b33c..193e9be 100644
--- a/swift-mode.el
+++ b/swift-mode.el
@@ -219,6 +219,8 @@
    ((looking-at ",") (forward-char 1) ",")
    ((looking-at ":") (forward-char 1) ":")
 
+   ((looking-at "->") (forward-char 2) "->")
+
    ((looking-at "<") (forward-char 1)
     (if (looking-at "[[:upper:]]") "<T" "OP"))
    ((looking-at ">") (forward-char 1)
@@ -256,6 +258,9 @@
      ((eq (char-before) ?,) (backward-char 1) ",")
      ((eq (char-before) ?:) (backward-char 1) ":")
 
+     ((looking-back "->" (- (point) 2) t)
+      (goto-char (match-beginning 0)) "->")
+
      ((eq (char-before) ?<) (backward-char 1)
       (if (looking-at "<[[:upper:]]") "<T" "OP"))
      ((eq (char-before) ?>) (backward-char 1)

Reply via email to