 (defn enum-resolver [enum]
   (assert (:name enum) (format "enum name is null for:%s" enum))
   {:name (:name enum)
-   :description nil
-   :isDeprecated false
-   :deprecationReason nil})
+   :description (:doc enum)
+   :isDeprecated false ; TODO
+   :deprecationReason nil ; TODO
+   })
 
 (defn args-resolver [arg]
   (assert (:name arg) (format "argument name is null for:%s" arg))

       :inner-type (dissoc type :required)}
      {:kind kind
       :name type-name
       :description (:description type)

       ;; OBJECT and INTERFACE only
       :fields (when (contains? #{:OBJECT :INTERFACE} kind)

      (assert inner-type (format "inner-type is nil for type: %s" arg)))
    (assert (or type-name inner-type) (format "Both type-name and inner-type are nil for arg:%s" arg))
    {:name (:name arg)
     :description (:doc arg)
     
     ;; defer resolving of type for argument
     :type-name type-name
