(annotation-badge {:keys [t lambda? js-built-in-object? js-built-in-object-name
all-tags java-util-class? java-lang-class? coll-type?
transient? classname]
:as m})(maybe-ellipsize {:keys [coll-type? ellipsized x t meta-map]})Attaches badge and ellipsis, when appropriate.
Wraps atoms and volatiles.
Adds :strlen-with-badge-ellipsized entry to meta, to potentially be used for formatting in fireworks.serialize/serialized.
Attaches badge and ellipsis, when appropriate. Wraps atoms and volatiles. Adds :strlen-with-badge-ellipsized entry to meta, to potentially be used for formatting in fireworks.serialize/serialized.
(profile x)(profile x {:keys [key? associated-value js-map-like-key? index] :as mapkey})Enriches value's metadata map by merging it with :fw/truncated entry and adding additional entries to such as:
:some-colls-as-keys?
:str-len-with-badge-ellipsized
:single-column-map-layout?
:some-syms-carrying-metadata-as-keys?
:str-len-with-badge
:some-elements-carry-user-metadata?
These additional entries address things like:
Example: (? {:coll-limit 5} (with-meta (range 8) {:foo :bar}))
^{:og-x '(0 1 2 3 4 5 6 7), :some-colls-as-keys? false, :str-len-with-badge-ellipsized 0, :coll-type? true, :carries-meta? true, :array-map? false, :kv? false, :user-meta {:foo :bar}, :truncated-coll-size 5, :map-like? false, :user-meta? nil, :single-column-map-layout? false, :type 'clojure.lang.LongRange, :too-deep? false, :coll-size 8, :some-syms-carrying-metadata-as-keys? false, :all-tags #{:coll :seq}, :str-len-with-badge 11, :coll-limit 5, :some-elements-carry-user-metadata? false, :fw/user-meta {:foo :bar}, :coll-size-adjust 8, :sev? false, :num-dropped 3, :top-level-sev? false, :depth 0, :t :seq, :x '(0 1 2 3 4 5 6 7), :js-typed-array? false, :val-is-atom? false, :val-is-volatile? false, :number-type? false, :js-map-like? false} [^{...} 1 ^{...} 2 ^{...} 3 ^{...} 4]
Enriches value's metadata map by merging it with :fw/truncated entry and
adding additional entries to such as:
:some-colls-as-keys?
:str-len-with-badge-ellipsized
:single-column-map-layout?
:some-syms-carrying-metadata-as-keys?
:str-len-with-badge
:some-elements-carry-user-metadata?
These additional entries address things like:
- Data structures as map keys
- Map keys with metadata
- Elements in collection with metadata
- Lables for objects, records, transients
- Ellipises
- Adjusted string length
Example:
(? {:coll-limit 5} (with-meta (range 8) {:foo :bar}))
^{:og-x '(0 1 2 3 4 5 6 7),
:some-colls-as-keys? false,
:str-len-with-badge-ellipsized 0,
:coll-type? true,
:carries-meta? true,
:array-map? false,
:kv? false,
:user-meta {:foo :bar},
:truncated-coll-size 5,
:map-like? false,
:user-meta? nil,
:single-column-map-layout? false,
:type 'clojure.lang.LongRange,
:too-deep? false,
:coll-size 8,
:some-syms-carrying-metadata-as-keys? false,
:all-tags #{:coll :seq},
:str-len-with-badge 11,
:coll-limit 5,
:some-elements-carry-user-metadata? false,
:fw/user-meta {:foo :bar},
:coll-size-adjust 8,
:sev? false,
:num-dropped 3,
:top-level-sev? false,
:depth 0,
:t :seq,
:x '(0 1 2 3 4 5 6 7),
:js-typed-array? false,
:val-is-atom? false,
:val-is-volatile? false,
:number-type? false,
:js-map-like? false}
[^{...}
1
^{...}
2
^{...}
3
^{...}
4](re-profile x meta-map f)Reprofile to deal with map keys
Reprofile to deal with map keys
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |