nathanmarz
|
0b88411f88
|
rename walker param to be consistent with doc
|
2017-06-02 13:46:47 -04:00 |
|
nathanmarz
|
b2589e00a6
|
fix handling of records with ALL in cljs
|
2017-06-02 10:17:35 -04:00 |
|
nathanmarz
|
d0ff9bbc35
|
reimplement codewalker so it works with NONE
|
2017-06-01 02:38:20 -04:00 |
|
nathanmarz
|
340d6d3065
|
reimplement walker in terms of recursive-path to support NONE removal
|
2017-06-01 01:38:12 -04:00 |
|
nathanmarz
|
e8f15c4137
|
extend ALL to records (for walker reimplementation)
|
2017-06-01 01:27:24 -04:00 |
|
nathanmarz
|
5d185ec9f4
|
for ALL on maps, interpret transformed key value pair of < size 2 as removal
|
2017-05-31 21:00:23 -04:00 |
|
nathanmarz
|
1411ac495e
|
add comments about workaround for cljs bug
|
2017-05-29 21:52:40 -04:00 |
|
nathanmarz
|
a924c75ac6
|
workaround to cljs bug where private vars in cljs.core can cause warnings with same named var (in this case, NONE)
|
2017-05-29 21:46:59 -04:00 |
|
nathanmarz
|
0608ca6396
|
fix bug with nested dynamic params with dynamic function invocations
|
2017-05-08 18:48:46 -04:00 |
|
nathanmarz
|
426873da98
|
support transforms to NONE for set-elem and map-key
|
2017-05-07 20:30:50 -04:00 |
|
nathanmarz
|
2dd6432c69
|
add set-elem navigator and change semantics of map-key to only navigate if the key exists (for consistency with set-elem)
|
2017-05-07 19:36:50 -04:00 |
|
nathanmarz
|
2423127877
|
add map-key
|
2017-05-05 18:41:46 -04:00 |
|
nathanmarz
|
5dea8919be
|
add helper pred navs for common comparisons
|
2017-04-24 20:35:41 -04:00 |
|
nathanmarz
|
e3abd1ef9a
|
better doc for filterer
|
2017-04-15 15:45:22 -04:00 |
|
nathanmarz
|
be30e46960
|
allow subselect/filterer to remove subvals
|
2017-04-13 10:20:24 -04:00 |
|
nathanmarz
|
ee56ddc1ab
|
force ALL on lists to realize lazy sequence, fix benchmark
|
2017-04-11 11:58:52 -04:00 |
|
nathanmarz
|
b18a249623
|
improve performance of ALL transform on lists, add benchmark
|
2017-04-11 11:44:39 -04:00 |
|
nathanmarz
|
c3164d722d
|
add satisfies-protpath?
|
2017-04-03 13:46:08 -04:00 |
|
nathanmarz
|
06d3ba548e
|
fix nested dynamic arg issue for cljs
|
2017-04-01 04:45:50 -04:00 |
|
nathanmarz
|
b6ef861338
|
Fix #199
|
2017-04-01 04:27:57 -04:00 |
|
nathanmarz
|
3916c0dcf4
|
mark pred as direct-nav
|
2017-03-29 16:38:13 -04:00 |
|
nathanmarz
|
fedef396eb
|
change dynamic navs to return single navigator instead of sequence of one nav, helps inline compiler when a nav takes a parameterized navs as input
|
2017-03-22 13:30:35 -04:00 |
|
nathanmarz
|
70f41a635a
|
make inline cache vars private
|
2017-03-15 11:52:35 -04:00 |
|
nathanmarz
|
e32ec1c687
|
remove dead code
|
2017-03-14 12:21:18 -04:00 |
|
nathanmarz
|
35c8a9380e
|
Add with-fresh-collected docstring
|
2017-03-01 10:46:28 -05:00 |
|
nathanmarz
|
b13b8d3c35
|
add remove with NONE functionality to FIRST and LAST
|
2017-03-01 10:40:17 -05:00 |
|
nathanmarz
|
2504b7849a
|
add specialized MAP-KEYS navigator
|
2017-02-28 15:55:25 -05:00 |
|
nathanmarz
|
e7b595c4ca
|
fix issue with NONE-ELEM on nil value
|
2017-02-17 17:54:11 -05:00 |
|
nathanmarz
|
ef5ad1de6d
|
fix transforms on subvectors to maintain the type as a vector type
|
2017-02-17 12:05:12 -05:00 |
|
nathanmarz
|
b79a71decd
|
Add BEFORE-ELEM, AFTER-ELEM, and NONE-ELEM navigators
|
2017-02-15 20:34:44 -05:00 |
|
nathanmarz
|
7c798c1e3b
|
extend srange, BEGINNING, END, FIRST, and LAST to strings
|
2017-02-15 18:30:44 -05:00 |
|
nathanmarz
|
ffcba01df7
|
fix NAMESPACE select
|
2017-02-15 10:12:08 -05:00 |
|
nathanmarz
|
d595b9f26b
|
change nthpath to richnav for performance
|
2017-02-14 14:33:46 -05:00 |
|
nathanmarz
|
71ed0ffae9
|
Add docstrings for keypath, must, and nthpath
|
2017-02-14 10:46:02 -05:00 |
|
nathanmarz
|
16310d6008
|
fix docstring
|
2017-02-14 10:42:54 -05:00 |
|
nathanmarz
|
48efea55ab
|
Added NAME and NAMESPACE navigators
|
2017-02-14 08:47:19 -05:00 |
|
nathanmarz
|
3dbc775334
|
fix if-path/selected?/not-selected? so that vals are passed along to condition paths
|
2017-02-14 08:25:54 -05:00 |
|
nathanmarz
|
646e03a227
|
Add nthpath navigator
|
2017-02-12 21:13:08 -05:00 |
|
nathanmarz
|
3f71163454
|
extend ALL to PersistentHashSet
|
2017-02-12 21:02:38 -05:00 |
|
nathanmarz
|
e2b6f63f99
|
fix traverse with early termination to unwrap reduced vals
|
2017-02-12 15:24:13 -05:00 |
|
nathanmarz
|
28ecb90489
|
add docstrings
|
2017-02-12 11:38:45 -05:00 |
|
nathanmarz
|
3693d307fc
|
fix traverse-all to properly propagate reduced vals, add tests
|
2017-02-12 11:37:14 -05:00 |
|
nathanmarz
|
62c998a472
|
implement traverse-all
|
2017-02-12 09:38:56 -05:00 |
|
nathanmarz
|
80b3857b08
|
implement early termination using reduced, re-implement select-any/select-first in terms of it
|
2017-02-11 21:26:30 -05:00 |
|
nathanmarz
|
f521409482
|
add with-fresh-collected higher order navigator
|
2017-02-11 08:56:45 -05:00 |
|
nathanmarz
|
a1929d9eb7
|
add note on mutli-path about potential future enhancement
|
2017-02-10 17:29:49 -05:00 |
|
nathanmarz
|
39e8c758fc
|
fix missing wrap-dynamic-nav in cljs
|
2017-01-10 09:30:34 -05:00 |
|
Max Penet
|
f8d3ad5167
|
kill jvm reflection
|
2017-01-10 11:40:53 +01:00 |
|
nathanmarz
|
9505ac6dd1
|
Implement #165
|
2017-01-08 19:15:14 -05:00 |
|
nathanmarz
|
ef9d82e61d
|
fix tests
|
2017-01-08 17:41:56 -05:00 |
|
nathanmarz
|
00ab106dd6
|
finish implementation of #117
|
2017-01-08 17:32:15 -05:00 |
|
nathanmarz
|
6b500a6aef
|
implement NONE removal for ALL and MAP-VALS on PersistentArrayMap
|
2017-01-08 14:01:58 -05:00 |
|
nathanmarz
|
9617aa1931
|
implement ALL NONE removal for some of default cases
|
2017-01-08 13:30:14 -05:00 |
|
nathanmarz
|
fca11410b4
|
implemented NONE removal for keypath, must, MAP-VALS (except PersistentArrayMap), ALL (except lists and PersistentArrayMap)
|
2017-01-08 12:52:54 -05:00 |
|
nathanmarz
|
6a509ca478
|
fix tests
|
2016-12-26 12:55:14 -05:00 |
|
nathanmarz
|
72e004df23
|
dynamic navs automatically compile sequence returns if completely static
|
2016-12-26 12:54:12 -05:00 |
|
nathanmarz
|
4ad0f79643
|
fix #160
|
2016-12-03 11:05:06 -05:00 |
|
Nathan Marz
|
23e58ae223
|
don't convert lists to vectors in LAST
|
2016-11-18 16:24:09 -05:00 |
|
Nathan Marz
|
9178f38465
|
fix race condition relating to retrieving path from cache and aot compilation
|
2016-11-09 06:20:10 -05:00 |
|
Nathan Marz
|
013c4d6d0a
|
cljs compatibility
|
2016-11-07 11:25:12 -05:00 |
|
Nathan Marz
|
508e1d08ed
|
added traversed
|
2016-11-07 07:47:36 -05:00 |
|
Nathan Marz
|
dfedd30b29
|
Implemented #146, dynamic navigator enhancements
|
2016-10-31 23:57:12 -04:00 |
|
Nathan Marz
|
ce38883e64
|
fix flattening/type-conversion of sequential params during inline caching
|
2016-10-29 16:02:56 -04:00 |
|
Nathan Marz
|
d9d6c8772e
|
fix #152
|
2016-10-14 09:52:12 -04:00 |
|
Nathan Marz
|
ea1f851d94
|
Fix #148
|
2016-10-02 07:48:53 -04:00 |
|
Nathan Marz
|
2a6ef8d0c0
|
fix doc on comp-paths
|
2016-09-30 06:57:12 -04:00 |
|
Nathan Marz
|
03493cf9ca
|
replace any-pred? with core function some-fn
|
2016-09-07 15:19:50 -04:00 |
|
Nathan Marz
|
6a5d0f7560
|
rename any? to avoid conflict with clojure 1.9
|
2016-09-07 07:54:10 -04:00 |
|
Nathan Marz
|
2673004b5b
|
suppress cache vars from docs
|
2016-09-06 19:37:35 -04:00 |
|
Nathan Marz
|
c39b41fea1
|
suppress docs for generated functions
|
2016-09-06 19:34:37 -04:00 |
|
Nathan Marz
|
3afbafd38b
|
greatly speed up compilation (for select*, transform*, etc)
|
2016-09-05 08:17:33 -04:00 |
|
Nathan Marz
|
2e85cedcc4
|
merge macros namespace into core com.rpl.specter namespace
|
2016-09-05 07:48:05 -04:00 |
|
Nathan Marz
|
c44a380092
|
fix so direct-nav metadata on vars gets translated appropriately when that var is called as a function
|
2016-09-03 22:07:45 -04:00 |
|
Nathan Marz
|
18791c6b82
|
inline caching working for cljs, all tests passing
|
2016-09-03 19:58:10 -04:00 |
|
Nathan Marz
|
d7d1d264ef
|
basic cljs inline caching working
|
2016-09-03 17:35:13 -04:00 |
|
Nathan Marz
|
8a71d5241d
|
refactor to unify cljs and clj inline caching code
|
2016-09-03 16:09:02 -04:00 |
|
Nathan Marz
|
5400e3fd65
|
cleaner inline caching implementation
|
2016-09-03 09:29:01 -04:00 |
|
Nathan Marz
|
16446373f1
|
make terminal-val return a direct-nav, add another benchmark case
|
2016-09-02 20:20:49 -04:00 |
|
Nathan Marz
|
194396f0f4
|
remove todo
|
2016-09-02 10:45:50 -04:00 |
|
Nathan Marz
|
bb77fb8f9d
|
moved mk-comp-navs macro into clj namespace
|
2016-09-02 09:17:32 -04:00 |
|
Nathan Marz
|
0046e23bfe
|
added with-inline-debug helper and updated comment on dynamicnavs
|
2016-09-02 09:02:09 -04:00 |
|
Nathan Marz
|
0c50e1859d
|
fix + test for when dynamic navs ignore dynamic params
|
2016-09-02 08:41:02 -04:00 |
|
Nathan Marz
|
984e3cdcd2
|
update changelog
|
2016-09-01 23:37:36 -04:00 |
|
Nathan Marz
|
1d52e970a0
|
another perf enhancement
|
2016-09-01 23:20:53 -04:00 |
|
Nathan Marz
|
dc6740d9dc
|
fix accidental reflection
|
2016-09-01 23:15:42 -04:00 |
|
Nathan Marz
|
939378fcd1
|
fix transformed, all tests passing
|
2016-09-01 22:16:39 -04:00 |
|
Nathan Marz
|
23299457db
|
fixes
|
2016-09-01 21:46:04 -04:00 |
|
Nathan Marz
|
e910f32931
|
fixes
|
2016-09-01 21:13:20 -04:00 |
|
Nathan Marz
|
e33ecb2c33
|
some fixes
|
2016-09-01 21:07:01 -04:00 |
|
Nathan Marz
|
c80bf573a5
|
updated tests, lots of errors
|
2016-09-01 20:32:38 -04:00 |
|
Nathan Marz
|
6549be1be5
|
protpaths and parameterized protpaths working
|
2016-09-01 17:35:19 -04:00 |
|
Nathan Marz
|
e057ee8d22
|
add note about original-obj
|
2016-09-01 17:04:58 -04:00 |
|
Nathan Marz
|
e571df5832
|
add code to avoid embedding functions with metadata on them (which kills perf)
|
2016-09-01 16:59:40 -04:00 |
|
Nathan Marz
|
f8d74d5884
|
add direct nav hints
|
2016-09-01 16:31:00 -04:00 |
|
Nathan Marz
|
479cb7d023
|
re-implemented declarepath and providepath, added local-declarepath for making recursive/mutually-recursive navigators locally
|
2016-09-01 13:56:51 -04:00 |
|
Nathan Marz
|
4c570e5de4
|
fixes + manual inlining for keypath, must, view
|
2016-09-01 11:24:15 -04:00 |
|
Nathan Marz
|
c80a2d3c50
|
fixes
|
2016-09-01 10:04:51 -04:00 |
|
Nathan Marz
|
eb5de0bdd5
|
lots of progress
|
2016-08-31 22:30:28 -04:00 |
|
Nathan Marz
|
f511cd4fca
|
initial rewriting
|
2016-08-29 22:01:17 -04:00 |
|
Nathan Marz
|
a35cacae67
|
have defnav generate every method as a helper function as well (with name <name>-<method-name>, takes params as initial arguments followed by regular method arguments (except for 'this')
|
2016-08-17 09:42:59 -04:00 |
|