 (s/def ::constructors (s/map-of ::signature ::signature))
 (s/def ::post-init symbol?)
 (s/def ::method (s/and vector?
-                  (s/cat :name simple-symbol?
+                  (s/cat :method-name simple-symbol?
                          :param-types ::signature
                          :return-type ::class-ident)))
 (s/def ::methods (s/coll-of ::method :kind vector?))

(s/def ::local-name (s/and simple-symbol? #(not= '& %)))

(s/def ::binding-form
  (s/or :sym ::local-name
        :seq ::seq-binding-form
        :map ::map-binding-form))

;; sequential destructuring

(s/def ::seq-binding-form
  (s/and vector?
         (s/cat :elems (s/* ::binding-form)
                :rest (s/? (s/cat :amp #{'&} :form ::binding-form))
                :as (s/? (s/cat :as #{:as} :sym ::local-name)))))

;; map destructuring


(s/def ::ns-refer
  (s/spec (s/cat :clause #{:refer}
                 :lib simple-symbol?
                 :refer-filters ::filters)))

;; same as ::prefix-list, but with ::use-libspec instead
(s/def ::use-prefix-list
