Commit Graph

6 Commits

Author SHA1 Message Date
Danila Fedorin bb07382b59 Make CMake calls consistent. 2018-02-04 00:25:52 -08:00
Danila Fedorin 32af31d14a Ensure codebase is C90. 2018-02-04 00:21:03 -08:00
Danila Fedorin d808f98fd3 Add code to return early in CMakeLists to prevent being included again. 2017-03-18 17:36:13 -07:00
Danila Fedorin 0b6d73ebdf Write initial code for matching the patterns to a single string.
The code is limited in two aspects, at the moment:
* It's not very well tested
* The current "best" match is just the one that occurred last. While
this is just fine in terms of length, this leaves open to chance which
pattern type will be returned if multiple patterns of the same length
match.
2017-02-04 00:28:36 -08:00
Danila Fedorin 01d49eb397 Implement a few "pair map" functions, mostly used for hash tables.
In order to efficiently check if nodes are contained within a
given set, without knowing exactly how many nodes there are and
allocating a ton of memory, it's probably best to use a hash table
(sparse sets would be more efficient but would require to allocate
all of their space at once). It's also pointless to reimplement most
of the hash table functionality from libds just to get it to work
with pairs (pattern id + node id), so pairmap.h provides a few
defaults that can be plugged into the default ht_s, as well as a
few macros to facilitate some hash table operations.
2017-01-27 22:16:31 -08:00
Danila Fedorin 41d4d98678 Create CMakeLists.txt file. 2017-01-19 19:33:59 -08:00