Skip to content

Add more type related helpers #114

Open
@lread

Description

Originally raised by me as lread/rewrite-cljc-playground#5

Related to #113 - capturing valuable feedback from @sogaiu so I don't lose it. Need to review and evaluate more type related helpers.

Snippit from @sogaiu

(defn string-value
  "Return the string value for a node."
  [node]
  (when-let [lines (:lines node)]
    (cs/join "\n" lines)))
(defn string-node?
  "Returns true if node represents a string, else false."
  [node]
  (string-value node))
(defn string?
  "Returns true if zipper represents a string, else false."
  [zloc]
  (some-> zloc rz/node string-node?))
(defn symbol-value
  "Return the symbol value for a node."
  [node]
  (:value node))
(defn symbol-node?
  "Returns true if node represents a symbol, else false."
  [node]
  (clojure.core/symbol? (symbol-value node)))
(defn symbol?
  "Returns true if zipper represents a symbol, else false."
  [zloc]
  (some-> zloc rz/node symbol-node?))

Also: pointer to similar can be found within clj-kondo fork of rewrite-clj.

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    • Status

      High Priority (next release)

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions