Variable: f90-type-def-re

f90-type-def-re is a variable defined in f90.el.gz.

Value

"\\_<\\(type\\)\\_>\\(?:\\(?:[^()\n]*\\|.*,[      ]*\\(?:bind\\|extends\\)[       ]*(.*).*\\)::\\)?[      ]*\\(\\(?:\\sw\\|\\s_\\)+\\)"

Documentation

Regexp matching the definition of a derived type.

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/f90.el.gz
;; This is for a TYPE block, not a variable of derived TYPE.
;; Hence no need to add CLASS for F2003.
;; Note that this also matches "type is", so you might need to use
;; f90-typeis-re as well.
(defconst f90-type-def-re
  ;; type word    (includes "type is")
  ;; type :: word
  ;; type, attr-list :: word
  ;;   where attr-list = attr [, attr ...]
  ;;   and attr may include bind(c) or extends(thing)
  ;; NOT "type ("
  "\\_<\\(type\\)\\_>\\(?:\\(?:[^()\n]*\\|\
.*,[ \t]*\\(?:bind\\|extends\\)[ \t]*(.*).*\\)::\\)?\
[ \t]*\\(\\(?:\\sw\\|\\s_\\)+\\)"
  "Regexp matching the definition of a derived type.")