Commit graph

48 commits

Author SHA1 Message Date
Nathan Marz
6580f4df4b added selected-any? helper operation 2016-06-07 10:47:18 -04:00
Nathan Marz
e76363c532 more docstrings and benchmarks 2016-06-07 10:18:20 -04:00
Nathan Marz
88a79e3d77 add docstrings for new API elements 2016-06-07 09:40:14 -04:00
Nathan Marz
f3bf935509 new semantics for select* for increased performance, new select-any operation with maximal query performance, needs more tests 2016-06-06 20:29:45 -04:00
Nathan Marz
ae98aa48ba add specialized MAP-VALS navigator to circumvent the unavoidable overhead of [ALL LAST] 2016-06-06 16:03:08 -04:00
Nathan Marz
ff903cd236 optimize selected? and not-selected? 2016-06-04 22:57:56 -04:00
Nathan Marz
2d3902f478 huge speedup to if-path when condition is a single statically known function, big optimization for all transforms that don't use value collection by using identical? instead of empty? 2016-06-04 20:49:57 -04:00
Nathan Marz
0bc26c950e implement cond-path in terms of if-path to avoid all runtime sequence operations 2016-06-04 16:40:34 -04:00
Nathan Marz
ff2853381c huge speedup to if-path by having specialized implementation separate from cond-path 2016-06-04 15:01:28 -04:00
Nathan Marz
58865ee10d fill in missing docstrings 2016-06-04 09:40:41 -04:00
Nathan Marz
d9443232d8 add docstrings to the core select/transform/etc. macros 2016-06-04 09:29:45 -04:00
Nathan Marz
e1138747d9 fix #103 2016-06-03 16:25:27 -04:00
Nathan Marz
52740d56ac add :notpath metadata for pathedfn args that should not be interpreted as paths during inline factoring/caching, fixed transformed to operate appropriately in inline factoring when transform-fn is anonymous or local, drop support for cljs below v1.7.10 2016-06-02 02:42:18 -04:00
Nathan Marz
1c21be2262 minor performance optimizations to FIRST/LAST 2016-06-01 12:02:41 -04:00
Nathan Marz
e2e8fa091e Added continuous-subseqs navigator 2016-05-28 13:57:30 -04:00
Nathan Marz
b2cb9f1940 add doc for must-cache-paths 2016-05-24 08:42:23 -04:00
Nathan Marz
fcb5e013d4 fixed inline precompilation of inline sets in paths, fix bug leading to wrong params order during inline precompilation, change select/transform operations to be macros and move code around accordingly, rename previous versions of select/transform functions with * added 2016-05-22 08:57:53 -04:00
Nathan Marz
cdcdbbbaa4 clean up terminology – defpath -> defnav, path -> nav, fixed-pathed-path -> fixed-pathed-nav, variable-pathed-path -> variable-pathed-nav, StructurePath -> Navigator (breaking changes) 2016-05-21 15:54:07 -04:00
Nathan Marz
c2fa922717 automatically factor anonymous functions with pred, 20% more effient cache strategy, more efficient hot path, added ability with must-cache-paths to error when a path can't be cached and get detailed information why 2016-05-21 09:44:20 -04:00
Nathan Marz
d3a462aa06 initial impl working for basic use cases 2016-05-20 16:57:53 -04:00
Nathan Marz
1d77d295fa minor refactoring of ATOM and update changelog 2016-05-08 15:55:45 -04:00
Rakesh
c280b40b12 renamed atompath to ATOM 2016-05-08 23:39:14 +05:30
Rakesh
7b33c93132 Added path to navigate to atom value 2016-05-07 22:40:21 +05:30
Nathan Marz
03f6a12baa fix must select 2016-05-05 14:59:25 -04:00
Nathan Marz
3602a08e5d docstring for view 2016-05-05 14:29:20 -04:00
Nathan Marz
b4b2200377 added must navigator 2016-05-05 14:24:57 -04:00
Nathan Marz
a9aafc3eb8 clean up terminology usage by replacing selector with navigator or path as appropriate 2016-04-21 10:59:35 -04:00
Nathan Marz
82f591a5d3 redefine filterer in terms of subselect 2016-04-20 22:09:02 -04:00
Nathan Marz
7a29e3f056 Merge pull request #75 from aengelberg/add-select-view
Add new "subselect" path selector
2016-04-20 21:57:51 -04:00
Beau Fabry
eb20e86f9c Address PR comments
* Behave the same as select-keys for non-existent keys
 * Remove variadic input redirection
 * Use reduce to remove data instead of apply
2016-04-19 17:35:34 -07:00
Beau Fabry
b3c707092e add a submap path 2016-04-19 15:15:06 -07:00
Alex Engelberg
c7252a2b90 Changed name from 'select-view' to 'subselect' 2016-04-19 12:04:18 -07:00
Alex Engelberg
d797e1aec1 Add warning to docstring about input navigator requirement 2016-04-19 12:03:21 -07:00
Alex Engelberg
4c8aeebafc Switch from atom to mutable-cell 2016-04-19 11:55:32 -07:00
Alex Engelberg
96f6bbc9f4 Add select-view path selector + test case 2016-04-19 00:47:56 -07:00
Thomas Athorne
1ddd8c22f6 Clearer names for arguments that are functions. 2016-04-18 16:21:33 +00:00
Thomas Athorne
60bf33ffab Change name; add a test spec. 2016-04-17 16:04:22 +01:00
Thomas Athorne
c34e900427 Add biview path. 2016-04-16 17:16:23 +01:00
Nathan Marz
ed6f1902b9 rename VOID to STOP 2016-02-13 18:56:35 -05:00
Nathan Marz
b16dbdfdd2 change params-reset to backtrack in params-idx by number of needed params of its path, add test that verifies composability 2016-01-30 12:41:29 -08:00
Nathan Marz
8dd2cb8939 allow declarepath to have parameters, implemented params-reset for enabling recursive parameterized paths 2016-01-30 12:03:46 -08:00
Nathan Marz
d56ea62e00 reimplement stay-then-continue and continue-then-stay in terms of multi-path 2016-01-22 19:45:20 -08:00
Nathan Marz
dd6dafc390 implemented declarepath/providepath 2016-01-14 17:36:49 -05:00
Nathan Marz
1328551a19 added STAY, stay-then-continue, and continue-then-stay selectors 2016-01-14 13:15:19 -05:00
Nathan Marz
b3b6b99e7a fix replace-in to work with value collection 2016-01-12 16:25:02 -05:00
Nathan Marz
49c749b74e fix typo in comment 2016-01-12 15:40:37 -05:00
Nathan Marz
c9b78ce0d6 add VOID selector 2016-01-10 10:35:18 -05:00
Nathan Marz
41f42e20a1 fixed inadvertant reflection in protocol paths, replace object-array in jvm impl with faster impl 2015-12-16 00:53:50 -05:00
Renamed from src/com/rpl/specter.cljx (Browse further)