 (defvar-local merlin-imenu--value-list nil)
 (defvar-local merlin-imenu--type-list nil)
 (defvar-local merlin-imenu--exception-list nil)
+(defvar-local merlin-imenu--module-list nil)
+(defvar-local merlin-imenu--signature-list nil)
+(defvar-local merlin-imenu--class-list nil)
 
 (defun merlin-imenu-compute-position (line col)
   "Get location of the item."

             (setq merlin-imenu--value-list (cons marker merlin-imenu--value-list)))
            ((string= kind "Type")
             (setq merlin-imenu--type-list (cons marker merlin-imenu--type-list)))
            ((string= kind "Exn")
             (setq merlin-imenu--exception-list (cons marker merlin-imenu--exception-list))))
      (when sub-trees

      (push (cons "Exception" merlin-imenu--exception-list) index))
    (when merlin-imenu--type-list
      (push (cons "Type" merlin-imenu--type-list) index))
    (when merlin-imenu--module-list
      (push (cons "Module" merlin-imenu--module-list) index))
    (when merlin-imenu--signature-list
      (push (cons "Signature" merlin-imenu--signature-list) index))
    (when merlin-imenu--class-list
      (push (cons "Class" merlin-imenu--class-list) index))
    index))

;;;###autoload
