cwal

All files named "s2/s2_pf.c"
Login

All files named "s2/s2_pf.c"

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History for s2/s2_pf.c

2021-06-26
11:27
Renamed to s2/pf.c. Renamed s2/*.c to remove the extraneous s2_ prefix. Unrelated touchups in t10n/*. check-in: [3311efa964] user: stephan branch: trunk, size: 0
2020-04-24
07:04
Added s2_is_dir(), s2_mkdir(), s2_mkdir_p(), s2.fs.mkdir(), and s2.fs.dirIsAccessible(). file: [297477a357] check-in: [6e75e23d9d] user: stephan branch: trunk, size: 15247
2020-02-08
17:20
Replaced s2's clampdown mode with a flags-based approach (see s2.h's s2_disabled_flags enum). Added --s2-disable=flag,names,list to s2sh/s2sh2. file: [ee71d76497] check-in: [7dbb093d4e] user: stephan branch: trunk, size: 15821
2020-01-20
10:45
Added enum s2_pf_search_policy to provide symbolic names for the 3 policies. Related cleanups in code using s2_pf_search(). Added s2_home_get(). file: [5de4a9c9b8] check-in: [42783dfc69] user: stephan branch: trunk, size: 16126
00:01
Added s2_tokenize_path_to_array(). PathFinder constructor now accepts its arguments as arrays (old behaviour) or PATH-style strings (new behaviour). file: [428f20ef5e] check-in: [cfdeaaef9d] user: stephan branch: trunk, size: 15983
2020-01-19
02:38
If PathFinder.search() is given a Unique-type 2nd argument, that argument's wrapped value is used in its place. file: [3bd8c3a81d] check-in: [0151606614] user: stephan branch: trunk, size: 14817
2020-01-18
19:16
Reimplemented the s2 import() function in C (was script code, so it went from 6 lines to more than 70), and added new ways to call it. file: [6fcb1af370] check-in: [7af9cb2fe1] user: stephan branch: trunk, size: 14720
09:32
Minor internal PathFinder cleanups and a bugfix: it was not possible to find a search() match, even if the input string was a match as-is, if the search directory list was empty. Now an empty dir list is effectively the same as a list with a single empty-string entry. file: [6d21778245] check-in: [1ea230363a] user: stephan branch: trunk, size: 14835
04:52
Added s2.PathFinder.tokenizePath() and related C-level APIs. file: [ee4b7bc777] check-in: [ce2c6857e9] user: stephan branch: trunk, size: 14608
2019-12-13
17:31
Cleaned up ref/unref in two places in the PathFinder class - they haven't bitten us yet only because paths aren't normally subject to string interning :/. file: [f87990d277] check-in: [03505241a3] user: stephan branch: trunk, size: 14555
2018-05-08
16:50
Minor generic cleanups. file: [5e216102c9] check-in: [c72ba83cbe] user: stephan branch: trunk, size: 14519
2018-03-27
20:22
removed a no-longer-applicable comment. file: [7010976b3d] check-in: [60118c9ba2] user: stephan branch: trunk, size: 14491
2017-12-05
10:11
tiny internal cleanups/typos. file: [5070be0086] check-in: [e5464b6a7e] user: stephan branch: trunk, size: 14735
2017-11-04
21:18
Major semantics change: s2 overloaded operators no longer pass on their 'this' as the first argument to the overload (doing so simply cluttered up the usage of overloads). i really hope i got all the script-side implementations... file: [48048d3cf1] check-in: [6747352bc1] user: stephan branch: trunk, size: 14034
2017-11-03
13:00
Extended s2.PathFinder.search() to be able to be used as an overloaded operator (e.g. operator-> or operator#). file: [402aaaf80b] check-in: [2a7469d47b] user: stephan branch: trunk, size: 14284
2017-10-05
17:09
Merged (private) strlen-rewrite branch. This eliminates the 'length of 0 means to use cwal_strlen()' semantics from the major APIs (there may be a couple small outliers). My hands managed to survive, with the left pinky being only ever so slightly sore. file: [bd3c724f7f] check-in: [ef477c5d1e] user: stephan branch: trunk, size: 13461
2016-07-29
16:14
several trival code cleanups and minor modernization. file: [1282379e67] check-in: [46eaf44799] user: stephan branch: trunk, size: 13423
2016-02-05
11:14
split up the s2 APIs into internal/public parts. file: [3f3b865e42] check-in: [efa2b6c8b8] user: stephan branch: trunk, size: 13340
2016-01-29
21:54
mostly touchups in the C++ layer, plus a small bit of API renaming. file: [fae58719f0] check-in: [e4ade7f536] user: stephan branch: cpp-placement-new, size: 13331
2016-01-23
12:09
renamed s2_new_function2() to s2_new_callback(). file: [6444ab100e] check-in: [89a724ee0f] user: stephan branch: trunk, size: 13331
11:36
added s2_add_ctor_method() and s2_add_ctor_callback() to simplify constructor injection. file: [c3fa1297e8] check-in: [1ea6373c3f] user: stephan branch: trunk, size: 13332
2016-01-21
09:04
Minor restructuring of how s2_ptoken_create_value() works, sharing values from s2_engine::stash. Saves a handful of allocs and allocations across the board. Renamed the "__new" magic method to "s2::new", despite its unsightliness. file: [1f31532e9f] check-in: [3d2f02e3ef] user: stephan branch: trunk, size: 13310
2016-01-08
17:09
large batch of tweaks, largely related to the hash-vs-objects work, but also an attempt at guaranteeing under/overflow behaviour on integer ops. file: [84ee5e1d47] check-in: [4d688d1ffc] user: stephan branch: s2-scope-hashes, size: 13296
2014-12-07
08:55
s2.PathFinder.__typename is now hidden. file: [a184394b00] check-in: [36586679ce] user: stephan branch: trunk, size: 13296
2014-12-06
16:30
core: more work on the various container flags, s2: more work on the enum keyword, other minor cleanups. file: [cd334a52d2] check-in: [8c61a703a0] user: stephan branch: trunk, size: 13231
01:40
s2: API renaming, more work on the 'new' keyword. file: [f106868a96] check-in: [874963ab8e] user: stephan branch: trunk, size: 13163
2014-12-05
20:16
s2: PathFinder.search() now throws if safe-mode level is 2 or higher (so it cannot be used to scan the filesystem, even though the i/o layer would not allow one to read/write contents). file: [706a5e4c20] check-in: [02ed019777] user: stephan branch: trunk, size: 12847
14:07
s2: added the long-overdue s2_install_functions(), refactored some places to use it instead of macros. file: [1c526017ec] check-in: [23308bbea9] user: stephan branch: trunk, size: 12469
2014-11-21
22:33
minor cleanup of s2.PathFinder.new(). file: [afd7547ebe] check-in: [cd70052ad9] user: stephan branch: trunk, size: 12331
21:08
added s2.PathFinder.separator, its constructor now adds the suffix/prefix properties automatically. file: [50da3173a5] check-in: [fe7ca895e1] user: stephan branch: trunk, size: 12225
2014-10-12
08:21
s2: minor internal cleanups in the PathFinder bits. file: [cf6b5e2df0] check-in: [e3fe6fffcb] user: stephan branch: trunk, size: 12039
2014-10-11
18:25
s2: Added directory handling policy option to s2_pf_search(), but does not work on non-Unix due to missing is-this-a-directory() bits. Fixed a pair of broken is-dir checks (wrong argument passed). file: [d300cb557a] check-in: [1e657aed8e] user: stephan branch: trunk, size: 11725
2014-08-21
22:47
s2.PathFinder.search() now ignores directories on unix (adding proper Windows support requires a slew of string conversion routines). file: [fbfde02852] check-in: [2ecdadf7ce] user: stephan branch: trunk, size: 11099
2014-08-09
20:13
fixed s2 PathFinder.search() to recognize when passed an existing filename. file: [7b646b2fb0] check-in: [7028d6e500] user: stephan branch: trunk, size: 10662
2014-07-07
17:56
Added: s2: ported in PathFinder class from th1ish, plus some related infrastructure. file: [6589709e87] check-in: [a609daa8f4] user: stephan branch: trunk, size: 10523