summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid McMackins II <contact@mcmackins.org>2022-01-03 07:22:46 -0600
committerDavid McMackins II <contact@mcmackins.org>2022-01-03 07:22:46 -0600
commit33cd809984b496bf3e55d2b789c472471282e6c5 (patch)
treed191212b3a6937621681377e401b2fd362a56c00
parentc8f89aae83d00150d8b3b08f7c93b96af2b3ae76 (diff)
Change license to COIL 1.0
-rw-r--r--COPYING36
-rw-r--r--README14
-rw-r--r--pfxtree-test.c51
-rw-r--r--pfxtree.c51
-rw-r--r--pfxtree.h51
5 files changed, 92 insertions, 111 deletions
diff --git a/COPYING b/COPYING
index dbe92cd..c24c539 100644
--- a/COPYING
+++ b/COPYING
@@ -1,25 +1,25 @@
+# Copyfree Open Innovation License
+
+This is version 1.0 of the Copyfree Open Innovation License.
+
+## Terms and Conditions
+
Redistributions, modified or unmodified, in whole or in part, must retain
-applicable copyright or other legal privilege notices, these conditions, and
-the following license terms and disclaimer. Subject to these conditions, the
-holder(s) of copyright or other legal privileges, author(s) or assembler(s),
-and contributors of this work hereby grant to any person who obtains a copy of
-this work in any form:
+applicable notices of copyright or other legal privilege, these conditions, and
+the following license terms and disclaimer. Subject to these conditions, each
+holder of copyright or other legal privileges, author or assembler, and
+contributor of this work, henceforth "licensor", hereby grants to any person
+who obtains a copy of this work in any form:
1. Permission to reproduce, modify, distribute, publish, sell, sublicense, use,
and/or otherwise deal in the licensed material without restriction.
-2. A perpetual, worldwide, non-exclusive, royalty-free, irrevocable patent
-license to reproduce, modify, distribute, publish, sell, use, and/or otherwise
-deal in the licensed material without restriction, for any and all patents:
-
- a. Held by each such holder of copyright or other legal privilege, author
- or assembler, or contributor, necessarily infringed by the contributions
- alone or by combination with the work, of that privilege holder, author or
- assembler, or contributor.
-
- b. Necessarily infringed by the work at the time that holder of copyright
- or other privilege, author or assembler, or contributor made any
- contribution to the work.
+2. A perpetual, worldwide, non-exclusive, royalty-free, gratis, irrevocable
+patent license to make, have made, provide, transfer, import, use, and/or
+otherwise deal in the licensed material without restriction, for any and all
+patents held by such licensor and necessarily infringed by the form of the work
+upon distribution of that licensor's contribution to the work under the terms
+of this license.
NO WARRANTY OF ANY KIND IS IMPLIED BY, OR SHOULD BE INFERRED FROM, THIS LICENSE
OR THE ACT OF DISTRIBUTION UNDER THE TERMS OF THIS LICENSE, INCLUDING BUT NOT
@@ -27,4 +27,4 @@ LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE,
AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS, ASSEMBLERS, OR HOLDERS OF
COPYRIGHT OR OTHER LEGAL PRIVILEGE BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER
LIABILITY, WHETHER IN ACTION OF CONTRACT, TORT, OR OTHERWISE ARISING FROM, OUT
-OF, OR IN CONNECTION WITH THE WORK OR THE USE OF OR OTHER DEALINGS IN THE WORK. \ No newline at end of file
+OF, OR IN CONNECTION WITH THE WORK OR THE USE OF OR OTHER DEALINGS IN THE WORK.
diff --git a/README b/README
index f79644e..dcd1fe4 100644
--- a/README
+++ b/README
@@ -15,14 +15,16 @@ registry. New words are added to the dictionary, and the dictionary is searched
one letter at a time to find the quickest route to the end of the desired word,
as opposed to checking string equality for each string in the dictionary which
is slow and inefficient on the CPU. Trie structures can be more memory
-efficient that a static string dictionary as well, because any words that share
+efficient than a static string dictionary as well, because any words that share
the same starting characters (prefix) will share the same memory for those
characters. This does come at a cost for dictionaries with words that are
nothing alike, because each character in the dictionary is more than 1 byte (32
bytes each on my implementation) since it must keep track of what characters
-are adjacent to it, and this implementation of the structure allows storage of
-one integer as data for complete words (used in LiberTI's encoder to determine
-which token to replace the keyword with).
+are adjacent to it.
+
+This implementation of the structure allows storage of one integer as data for
+complete words (used in LiberTI's encoder to determine which token to replace
+the keyword with) or a pointer to arbitrary data.
Many implementations of this structure exist, but this is Delwink's preferred
implementation since it follows Delwink's standards and development styles.
@@ -37,7 +39,7 @@ systems, you can get this with:
libpfxtree uses a simple build process. You can compile it like so:
- $ make
+ $ make
Install
-------
@@ -57,7 +59,7 @@ request system.
License
-------
-libpfxtree is free software, released under the terms of version 0.5 of the
+libpfxtree is free software, released under the terms of version 1.0 of the
Copyfree Open Innovation License. You are free to copy, modify, and
redistribute this software and use it for whatever purpose. See
[COPYING](COPYING) for more details.
diff --git a/pfxtree-test.c b/pfxtree-test.c
index acabca9..a4d7f63 100644
--- a/pfxtree-test.c
+++ b/pfxtree-test.c
@@ -2,38 +2,31 @@
* pfxtree-test - Delwink prefix tree library unit test
* Copyright (C) 2017, 2020 Delwink, LLC
*
- * Redistributions, modified or unmodified, in whole or in part, must retain
- * applicable copyright or other legal privilege notices, these conditions, and
- * the following license terms and disclaimer. Subject to these conditions,
- * the holder(s) of copyright or other legal privileges, author(s) or
- * assembler(s), and contributors of this work hereby grant to any person who
- * obtains a copy of this work in any form:
+ * Redistributions, modified or unmodified, in whole or in part, must retain
+ * applicable notices of copyright or other legal privilege, these conditions,
+ * and the following license terms and disclaimer. Subject to these
+ * conditions, each holder of copyright or other legal privileges, author or
+ * assembler, and contributor of this work, henceforth "licensor", hereby
+ * grants to any person who obtains a copy of this work in any form:
*
- * 1. Permission to reproduce, modify, distribute, publish, sell, sublicense,
- * use, and/or otherwise deal in the licensed material without restriction.
+ * 1. Permission to reproduce, modify, distribute, publish, sell, sublicense,
+ * use, and/or otherwise deal in the licensed material without restriction.
*
- * 2. A perpetual, worldwide, non-exclusive, royalty-free, irrevocable patent
- * license to reproduce, modify, distribute, publish, sell, use, and/or
- * otherwise deal in the licensed material without restriction, for any and all
- * patents:
+ * 2. A perpetual, worldwide, non-exclusive, royalty-free, gratis, irrevocable
+ * patent license to make, have made, provide, transfer, import, use, and/or
+ * otherwise deal in the licensed material without restriction, for any and
+ * all patents held by such licensor and necessarily infringed by the form of
+ * the work upon distribution of that licensor's contribution to the work
+ * under the terms of this license.
*
- * a. Held by each such holder of copyright or other legal privilege,
- * author or assembler, or contributor, necessarily infringed by the
- * contributions alone or by combination with the work, of that privilege
- * holder, author or assembler, or contributor.
- *
- * b. Necessarily infringed by the work at the time that holder of
- * copyright or other privilege, author or assembler, or contributor made
- * any contribution to the work.
- *
- * NO WARRANTY OF ANY KIND IS IMPLIED BY, OR SHOULD BE INFERRED FROM, THIS
- * LICENSE OR THE ACT OF DISTRIBUTION UNDER THE TERMS OF THIS LICENSE,
- * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR
- * A PARTICULAR PURPOSE, AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS,
- * ASSEMBLERS, OR HOLDERS OF COPYRIGHT OR OTHER LEGAL PRIVILEGE BE LIABLE FOR
- * ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN ACTION OF CONTRACT, TORT,
- * OR OTHERWISE ARISING FROM, OUT OF, OR IN CONNECTION WITH THE WORK OR THE USE
- * OF OR OTHER DEALINGS IN THE WORK.
+ * NO WARRANTY OF ANY KIND IS IMPLIED BY, OR SHOULD BE INFERRED FROM, THIS
+ * LICENSE OR THE ACT OF DISTRIBUTION UNDER THE TERMS OF THIS LICENSE,
+ * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR
+ * A PARTICULAR PURPOSE, AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS,
+ * ASSEMBLERS, OR HOLDERS OF COPYRIGHT OR OTHER LEGAL PRIVILEGE BE LIABLE FOR
+ * ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN ACTION OF CONTRACT,
+ * TORT, OR OTHERWISE ARISING FROM, OUT OF, OR IN CONNECTION WITH THE WORK OR
+ * THE USE OF OR OTHER DEALINGS IN THE WORK.
*/
#include <assert.h>
diff --git a/pfxtree.c b/pfxtree.c
index 0560184..709faaf 100644
--- a/pfxtree.c
+++ b/pfxtree.c
@@ -2,38 +2,31 @@
* libpfxtree - Delwink prefix tree library
* Copyright (C) 2015, 2017, 2020 Delwink, LLC
*
- * Redistributions, modified or unmodified, in whole or in part, must retain
- * applicable copyright or other legal privilege notices, these conditions, and
- * the following license terms and disclaimer. Subject to these conditions,
- * the holder(s) of copyright or other legal privileges, author(s) or
- * assembler(s), and contributors of this work hereby grant to any person who
- * obtains a copy of this work in any form:
+ * Redistributions, modified or unmodified, in whole or in part, must retain
+ * applicable notices of copyright or other legal privilege, these conditions,
+ * and the following license terms and disclaimer. Subject to these
+ * conditions, each holder of copyright or other legal privileges, author or
+ * assembler, and contributor of this work, henceforth "licensor", hereby
+ * grants to any person who obtains a copy of this work in any form:
*
- * 1. Permission to reproduce, modify, distribute, publish, sell, sublicense,
- * use, and/or otherwise deal in the licensed material without restriction.
+ * 1. Permission to reproduce, modify, distribute, publish, sell, sublicense,
+ * use, and/or otherwise deal in the licensed material without restriction.
*
- * 2. A perpetual, worldwide, non-exclusive, royalty-free, irrevocable patent
- * license to reproduce, modify, distribute, publish, sell, use, and/or
- * otherwise deal in the licensed material without restriction, for any and all
- * patents:
+ * 2. A perpetual, worldwide, non-exclusive, royalty-free, gratis, irrevocable
+ * patent license to make, have made, provide, transfer, import, use, and/or
+ * otherwise deal in the licensed material without restriction, for any and
+ * all patents held by such licensor and necessarily infringed by the form of
+ * the work upon distribution of that licensor's contribution to the work
+ * under the terms of this license.
*
- * a. Held by each such holder of copyright or other legal privilege,
- * author or assembler, or contributor, necessarily infringed by the
- * contributions alone or by combination with the work, of that privilege
- * holder, author or assembler, or contributor.
- *
- * b. Necessarily infringed by the work at the time that holder of
- * copyright or other privilege, author or assembler, or contributor made
- * any contribution to the work.
- *
- * NO WARRANTY OF ANY KIND IS IMPLIED BY, OR SHOULD BE INFERRED FROM, THIS
- * LICENSE OR THE ACT OF DISTRIBUTION UNDER THE TERMS OF THIS LICENSE,
- * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR
- * A PARTICULAR PURPOSE, AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS,
- * ASSEMBLERS, OR HOLDERS OF COPYRIGHT OR OTHER LEGAL PRIVILEGE BE LIABLE FOR
- * ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN ACTION OF CONTRACT, TORT,
- * OR OTHERWISE ARISING FROM, OUT OF, OR IN CONNECTION WITH THE WORK OR THE USE
- * OF OR OTHER DEALINGS IN THE WORK.
+ * NO WARRANTY OF ANY KIND IS IMPLIED BY, OR SHOULD BE INFERRED FROM, THIS
+ * LICENSE OR THE ACT OF DISTRIBUTION UNDER THE TERMS OF THIS LICENSE,
+ * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR
+ * A PARTICULAR PURPOSE, AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS,
+ * ASSEMBLERS, OR HOLDERS OF COPYRIGHT OR OTHER LEGAL PRIVILEGE BE LIABLE FOR
+ * ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN ACTION OF CONTRACT,
+ * TORT, OR OTHERWISE ARISING FROM, OUT OF, OR IN CONNECTION WITH THE WORK OR
+ * THE USE OF OR OTHER DEALINGS IN THE WORK.
*/
#include <stdlib.h>
diff --git a/pfxtree.h b/pfxtree.h
index 70d9326..a36d79e 100644
--- a/pfxtree.h
+++ b/pfxtree.h
@@ -2,38 +2,31 @@
* libpfxtree - Delwink prefix tree library
* Copyright (C) 2015, 2017, 2020 Delwink, LLC
*
- * Redistributions, modified or unmodified, in whole or in part, must retain
- * applicable copyright or other legal privilege notices, these conditions, and
- * the following license terms and disclaimer. Subject to these conditions,
- * the holder(s) of copyright or other legal privileges, author(s) or
- * assembler(s), and contributors of this work hereby grant to any person who
- * obtains a copy of this work in any form:
+ * Redistributions, modified or unmodified, in whole or in part, must retain
+ * applicable notices of copyright or other legal privilege, these conditions,
+ * and the following license terms and disclaimer. Subject to these
+ * conditions, each holder of copyright or other legal privileges, author or
+ * assembler, and contributor of this work, henceforth "licensor", hereby
+ * grants to any person who obtains a copy of this work in any form:
*
- * 1. Permission to reproduce, modify, distribute, publish, sell, sublicense,
- * use, and/or otherwise deal in the licensed material without restriction.
+ * 1. Permission to reproduce, modify, distribute, publish, sell, sublicense,
+ * use, and/or otherwise deal in the licensed material without restriction.
*
- * 2. A perpetual, worldwide, non-exclusive, royalty-free, irrevocable patent
- * license to reproduce, modify, distribute, publish, sell, use, and/or
- * otherwise deal in the licensed material without restriction, for any and all
- * patents:
+ * 2. A perpetual, worldwide, non-exclusive, royalty-free, gratis, irrevocable
+ * patent license to make, have made, provide, transfer, import, use, and/or
+ * otherwise deal in the licensed material without restriction, for any and
+ * all patents held by such licensor and necessarily infringed by the form of
+ * the work upon distribution of that licensor's contribution to the work
+ * under the terms of this license.
*
- * a. Held by each such holder of copyright or other legal privilege,
- * author or assembler, or contributor, necessarily infringed by the
- * contributions alone or by combination with the work, of that privilege
- * holder, author or assembler, or contributor.
- *
- * b. Necessarily infringed by the work at the time that holder of
- * copyright or other privilege, author or assembler, or contributor made
- * any contribution to the work.
- *
- * NO WARRANTY OF ANY KIND IS IMPLIED BY, OR SHOULD BE INFERRED FROM, THIS
- * LICENSE OR THE ACT OF DISTRIBUTION UNDER THE TERMS OF THIS LICENSE,
- * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR
- * A PARTICULAR PURPOSE, AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS,
- * ASSEMBLERS, OR HOLDERS OF COPYRIGHT OR OTHER LEGAL PRIVILEGE BE LIABLE FOR
- * ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN ACTION OF CONTRACT, TORT,
- * OR OTHERWISE ARISING FROM, OUT OF, OR IN CONNECTION WITH THE WORK OR THE USE
- * OF OR OTHER DEALINGS IN THE WORK.
+ * NO WARRANTY OF ANY KIND IS IMPLIED BY, OR SHOULD BE INFERRED FROM, THIS
+ * LICENSE OR THE ACT OF DISTRIBUTION UNDER THE TERMS OF THIS LICENSE,
+ * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR
+ * A PARTICULAR PURPOSE, AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS,
+ * ASSEMBLERS, OR HOLDERS OF COPYRIGHT OR OTHER LEGAL PRIVILEGE BE LIABLE FOR
+ * ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN ACTION OF CONTRACT,
+ * TORT, OR OTHERWISE ARISING FROM, OUT OF, OR IN CONNECTION WITH THE WORK OR
+ * THE USE OF OR OTHER DEALINGS IN THE WORK.
*/
/**