branch: elpa/julia-mode commit af5eb639d68640ea5eec51d4d89d1fdab5b4b113 Author: Rafael Fourquet <fourquet.raf...@gmail.com> Commit: Rafael Fourquet <fourquet.raf...@gmail.com>
short function syntax: support return type declaration --- julia-mode-tests.el | 4 +++- julia-mode.el | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/julia-mode-tests.el b/julia-mode-tests.el index f2320a3..1965fc8 100644 --- a/julia-mode-tests.el +++ b/julia-mode-tests.el @@ -425,7 +425,9 @@ end") (julia--should-font-lock "f(x) where T = 1" 1 'font-lock-function-name-face) (julia--should-font-lock - "f(x) where{T} = 1" 1 'font-lock-function-name-face)) + "f(x) where{T} = 1" 1 'font-lock-function-name-face) + (dolist (def '("f(x)::T = 1" "f(x) :: T = 1" "f(x::X)::T where X = x")) + (julia--should-font-lock def 1 'font-lock-function-name-face))) (ert-deftest julia--test-where-keyword-font-locking () (julia--should-font-lock diff --git a/julia-mode.el b/julia-mode.el index 737e44a..daf42d7 100644 --- a/julia-mode.el +++ b/julia-mode.el @@ -235,6 +235,8 @@ This function provides equivalent functionality, but makes no efforts to optimis (not (any "(" ")")))) ")" (* space) + (? "::" (* space) (1+ (not (any space)))) + (* space) (* (seq "where" (or "{" (+ space)) (+ (not (any "="))))) "=" (not (any "="))))