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)