[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/swift-mode 107195e 219/496: Improve lexer rule for generic
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/swift-mode 107195e 219/496: Improve lexer rule for generics with optional or implicit unwrapping |
Date: |
Sun, 29 Aug 2021 11:33:39 -0400 (EDT) |
branch: elpa/swift-mode
commit 107195e137b8541bd82d0c5f629234a23e8532b2
Author: ap4y <lod@pisem.net>
Commit: ap4y <lod@pisem.net>
Improve lexer rule for generics with optional or implicit unwrapping
---
swift-mode.el | 3 ++-
test/indentation-tests.el | 27 +++++++++++++++++++++++++++
2 files changed, 29 insertions(+), 1 deletion(-)
diff --git a/swift-mode.el b/swift-mode.el
index aa665ec..c5412fb 100644
--- a/swift-mode.el
+++ b/swift-mode.el
@@ -285,7 +285,8 @@
((eq (char-before) ?<) (backward-char 1)
(if (looking-at "<[[:upper:]]") "<T" "OP"))
- ((eq (char-before) ?>) (backward-char 1)
+ ((looking-back ">[?!]?" (- (point) 2) t)
+ (goto-char (match-beginning 0))
(if (looking-back "[[:space:]]" 1 t) "OP" "T>"))
((looking-back swift-smie--operators-regexp (- (point) 3) t)
diff --git a/test/indentation-tests.el b/test/indentation-tests.el
index d522756..65897e9 100644
--- a/test/indentation-tests.el
+++ b/test/indentation-tests.el
@@ -1752,6 +1752,33 @@ var object: JsonObject?
|var object: JsonObject
")
+(check-indentation indents-expression-with-optional-type/2
+ "
+var object: JsonObject<Foo>?
+ |var object: JsonObject
+" "
+var object: JsonObject<Foo>?
+|var object: JsonObject
+")
+
+(check-indentation indents-expression-with-implicit-unwrapped-type/1
+ "
+var object: JsonObject!
+ |var object: JsonObject
+" "
+var object: JsonObject!
+|var object: JsonObject
+")
+
+(check-indentation indents-expression-with-implicit-unwrapped-type/2
+ "
+var object: JsonObject<Foo>!
+ |var object: JsonObject
+" "
+var object: JsonObject<Foo>!
+|var object: JsonObject
+")
+
(provide 'indentation-tests)
;;; indentation-tests.el ends here
- [nongnu] elpa/swift-mode abd6e07 130/496: Merge pull request #39 from ap4y/fix_37, (continued)
- [nongnu] elpa/swift-mode abd6e07 130/496: Merge pull request #39 from ap4y/fix_37, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode c664fc2 144/496: Merge pull request #51 from ap4y/fix_default_case_indentation, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode ce72472 141/496: Make all possible operators allowed in string interpolation, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 3298fb1 169/496: Stop overriding user preferences for tab-width., ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 0808a2b 170/496: Add font-lock rules for access modifier keywords, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 52045f0 174/496: Fix issues with several failing tests on emacs 24.4, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 230afd3 175/496: Setup travis matrix with emacs 24.3 and 24.4., ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 5fabebd 196/496: Improve indentation rules for function arguments, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 38933b9 208/496: Don't use implicit semicolon when operator is placed on the second line, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode d0c65bc 212/496: Fix bug with the closing parentheses in method calls and function, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 107195e 219/496: Improve lexer rule for generics with optional or implicit unwrapping,
ELPA Syncer <=
- [nongnu] elpa/swift-mode cdf7ad4 220/496: Fix indentation issues with deep nested if cluase, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 9941c27 224/496: Bring failing tests for #81 contributed in #82 by @dougbeal, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 4ae6cc2 228/496: Fix indent when after comment, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 68a3a29 231/496: Support for choosing framework search paths., ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 8e0f8d6 240/496: Merge pull request #94 from wiruzx/new-range-operator, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 17bf117 242/496: Merge pull request #95 from wiruzx/add-as!-operator, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode b3af0b0 252/496: Constraint all look backs to the reasonable amount of lines, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 52a01b1 269/496: Add test case for backward-sexp, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 5c09b07 289/496: Merge pull request #114 from uk-ar/fix-indent-for-ternary-operator, ELPA Syncer, 2021/08/29
- [nongnu] elpa/swift-mode 4e9da69 299/496: Release 0.4.0, ELPA Syncer, 2021/08/29