diff options
| author | Niko Matsakis <niko@alum.mit.edu> | 2017-04-11 10:51:33 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-04-11 10:51:33 -0400 |
| commit | 85befb942a11c76caf2b7889ed79453fd4512198 (patch) | |
| tree | de30a776ce917589a7f5496661e364d5019ed6d1 | |
| parent | 4d651ab274ad41865c31405c70464cbd6f862f06 (diff) | |
| parent | f269c5ed312715fe862a32fae79f3e12131b1b7a (diff) | |
| download | rust-mode-85befb942a11c76caf2b7889ed79453fd4512198.tar.gz | |
Merge pull request #201 from tromey/question-indentation
fix syntax of "<" appearing after "?"
| -rw-r--r-- | rust-mode-tests.el | 7 | ||||
| -rw-r--r-- | rust-mode.el | 3 |
2 files changed, 10 insertions, 0 deletions
diff --git a/rust-mode-tests.el b/rust-mode-tests.el index 9c9a4d6..98230de 100644 --- a/rust-mode-tests.el +++ b/rust-mode-tests.el @@ -1868,6 +1868,13 @@ fn main() { ")) (test-indent text text))) +(ert-deftest indent-question-mark-operator () + (test-indent "fn foo() { + if bar()? < 1 { + } + baz(); +}")) + (defun rust-test-matching-parens (content pairs &optional nonparen-positions) "Assert that in rust-mode, given a buffer with the given `content', emacs's paren matching will find all of the pairs of positions diff --git a/rust-mode.el b/rust-mode.el index 5b53277..2307cc0 100644 --- a/rust-mode.el +++ b/rust-mode.el @@ -866,6 +866,9 @@ the desired identifiers), but does not match type annotations \"foo::<\"." ((rust-looking-back-symbols rust-mode-keywords) (rust-looking-back-symbols '("self" "true" "false"))) + ((rust-looking-back-str "?") + (rust-is-in-expression-context 'ambiguous-operator)) + ;; If we're looking back at an identifier, this depends on whether ;; the identifier is part of an expression or a type ((rust-looking-back-ident) |
