Don't allow field names to start with hyphen
This commit is contained in:
@@ -16,36 +16,46 @@
|
|||||||
(defn split-string
|
(defn split-string
|
||||||
[s]
|
[s]
|
||||||
(if (= s (string/upper-case s))
|
(if (= s (string/upper-case s))
|
||||||
[s]
|
(string/split s #"_")
|
||||||
(string/split s #"(?=[A-Z])")))
|
(string/split s #"(?=[A-Z])")))
|
||||||
|
|
||||||
(defn camel->keyword
|
(defn string->keyword
|
||||||
[s]
|
[s]
|
||||||
(->> (string/replace s "_" "-")
|
(->> (split-string s)
|
||||||
split-string
|
|
||||||
(map string/lower-case)
|
(map string/lower-case)
|
||||||
(string/join "-")
|
(string/join "-")
|
||||||
keyword))
|
keyword))
|
||||||
|
|
||||||
(defn parse-param
|
(defn parse-param
|
||||||
[^Parameter p]
|
[^Parameter p]
|
||||||
[(.typeName p) (-> (.name p) camel->keyword name)])
|
[(.typeName p) (-> (.name p) string->keyword name)])
|
||||||
|
|
||||||
(defn parse-doc-name
|
(defn parse-doc-name
|
||||||
[^Doc d]
|
[^Doc d]
|
||||||
(cond
|
(cond
|
||||||
(isa? (type d) ConstructorDoc)
|
(isa? (type d) ConstructorDoc)
|
||||||
nil
|
nil
|
||||||
|
|
||||||
(isa? (type d) ClassDoc)
|
(isa? (type d) ClassDoc)
|
||||||
(subs (.name d) (+ 1 (.lastIndexOf (.name d) ".")))
|
(->> (+ 1 (.lastIndexOf (.name d) "."))
|
||||||
|
(subs (.name d))
|
||||||
|
string->keyword)
|
||||||
|
|
||||||
|
(isa? (type d) FieldDoc)
|
||||||
|
(let [k (string->keyword (.name d))
|
||||||
|
s (name k)]
|
||||||
|
(if (= \- (first s))
|
||||||
|
(keyword (subs s 1))
|
||||||
|
k))
|
||||||
|
|
||||||
:else
|
:else
|
||||||
(.name d)))
|
(string->keyword (.name d))))
|
||||||
|
|
||||||
(defn parse-doc
|
(defn parse-doc
|
||||||
[^Doc d clj-name]
|
[^Doc d clj-name]
|
||||||
(merge {}
|
(merge {}
|
||||||
{:name (->> [(second (string/split clj-name #" "))
|
{:name (->> [(second (string/split clj-name #" "))
|
||||||
(some-> (parse-doc-name d) camel->keyword)]
|
(parse-doc-name d)]
|
||||||
(remove nil?)
|
(remove nil?)
|
||||||
(string/join " "))}
|
(string/join " "))}
|
||||||
(when (> (count (.commentText d)) 0)
|
(when (> (count (.commentText d)) 0)
|
||||||
|
|||||||
Reference in New Issue
Block a user