aboutsummaryrefslogtreecommitdiffstats
path: root/src/env.c
AgeCommit message (Collapse)AuthorFilesLines
2022-01-13Simplify node construction APIDavid Robillard1-58/+34
2022-01-13Simplify URI API and implementationDavid Robillard1-19/+24
2022-01-13Make nodes opaqueDavid Robillard1-57/+67
2022-01-13Shorten node constructor namesDavid Robillard1-3/+3
2022-01-13Remove redundant null check in serd_env_set_base_uri()David Robillard1-1/+1
The env parameter here is declared as nonnull in the API, so it is an error to call it with NULL (which clang can statically flag as a warning).
2022-01-13Remove "get" from accessor namesDavid Robillard1-1/+1
2022-01-13Rename function types for consistencyDavid Robillard1-1/+1
2022-01-13Rename SerdURI to SerdURIViewDavid Robillard1-7/+7
2022-01-13Rename SerdChunk to SerdStringViewDavid Robillard1-5/+5
2022-01-13Use char* for strings in public APIDavid Robillard1-12/+9
The constant casting just makes user code a mess, for no benefit.
2022-01-13Remove useless character countingDavid Robillard1-7/+2
2021-06-30Make node qualify and expand functions tolerate a null EnvDavid Robillard1-0/+12
This is convenient in places where you don't necessarily need an Env, since these methods will work the same as with an empty Env.
2021-05-31Make most function parameters constDavid Robillard1-20/+28
More const never hurts in general, but in particular this allows the compiler to make better nullability deductions, which reduces the amount of manual nullability casting required.
2021-05-31Remove "static inline" for functions in implementation filesDavid Robillard1-1/+1
This is just noise since these are static functions local to a C compilation unit.
2021-01-02Use email address instead of website for attributionDavid Robillard1-1/+1
2020-12-31Format all code with clang-formatDavid Robillard1-168/+165
2020-12-31Avoid "else" after "break" and "return"David Robillard1-2/+7
2020-11-13Fix test coverageDavid Robillard1-9/+7
2020-11-13Allow setting the base URI of an Env to NULLDavid Robillard1-2/+6
2020-11-11Add nonnull and nullable attributes to APIDavid Robillard1-0/+1
This will warn if NULL is passed to any nonnull-annotated parameter, and is also supported by sanitizers which can check for violations at runtime. Unfortunately, it is currently only supported by clang. GCC has a similar feature in the nonnull attribute, but this has a different syntax (it's a function attribute) and is more dangerous since it is used by the optimizer to assume a null pointer is undefined behavior. This one just warns and still allows code to handle the situation gracefully, which I think is more appropriate for a library API. Note that this optimization behavior is not some unlikely edge case: switching these attributes to the GCC one will break release builds.
2020-11-10Add const, pure, and malloc function attributesDavid Robillard1-1/+1
2020-08-16Ensure that all free methods tolerate NULLDavid Robillard1-0/+4
2020-08-14Fix Wswitch-enum warningsDavid Robillard1-6/+10
2020-08-14Avoid copying nodes when equivalent prefixes are setDavid Robillard1-3/+5
2020-06-21Clean up includesDavid Robillard1-2/+5
2019-10-27Fix integer conversion warningsDavid Robillard1-2/+2
2018-09-30Fix calloc argument orderDavid Robillard1-1/+1
2018-06-15Remove redundant SERD_API declarationsDavid Robillard1-10/+0
2018-06-10Remove syntax assumptions from SerdEnv implementationDavid Robillard1-24/+1
2018-05-27Clarify errors returned by serd_env_expand()David Robillard1-3/+3
2017-06-30Fix various clang-tidy issuesDavid Robillard1-16/+16
2016-09-18Fix memory errorDavid Robillard1-2/+3
Introduced in 443f470383dc3acba0fde7b705e8ff81a7c49595
2016-07-09Fix construction of URIs with UTF-8 charactersDavid Robillard1-3/+3
2014-08-08Use Markdown in doc comments for better source readability.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@471 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2014-08-08Update copyright dates.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@467 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2014-08-05Remove unnecessary include.David Robillard1-1/+0
git-svn-id: http://svn.drobilla.net/serd/trunk@464 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2014-04-11Minor hardening.David Robillard1-6/+6
git-svn-id: http://svn.drobilla.net/serd/trunk@459 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-08-08Fix warnings: -Wshadow -Wpointer-arith -Wcast-align -Wstrict-prototypes ↵David Robillard1-4/+3
-Wmissing-prototypes. git-svn-id: http://svn.drobilla.net/serd/trunk@374 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-07-05Add error callback to reader and writer for custom error reporting.David Robillard1-1/+1
Add -q option to serdi to suppress all non-data output, e.g. errors. Resolves #815. git-svn-id: http://svn.drobilla.net/serd/trunk@354 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-03-18Tolerate NULL URI parameter in serd_env_get_base_uri().David Robillard1-1/+3
git-svn-id: http://svn.drobilla.net/serd/trunk@337 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-02-21Print command name in serdi error messages.David Robillard1-6/+2
Trim code. git-svn-id: http://svn.drobilla.net/serd/trunk@313 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-01-16Fix compilation on sane platforms.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@292 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-01-16Support compilation as C++ under MSVC++David Robillard1-7/+7
git-svn-id: http://svn.drobilla.net/serd/trunk@291 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-01-16Update copyright dates.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@285 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-01-14Lint.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@283 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-25Near 100% branch coverage.David Robillard1-26/+17
git-svn-id: http://svn.drobilla.net/serd/trunk@277 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-25100% test coverage.David Robillard1-5/+3
git-svn-id: http://svn.drobilla.net/serd/trunk@276 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-24Allow digit as first character of prefixed name suffix (match latest Turtle ↵David Robillard1-20/+14
spec). Improve env.c test coverage. Add test case for ticket #734. git-svn-id: http://svn.drobilla.net/serd/trunk@271 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-11Move all #ifdef gunk to serd_internal.h.David Robillard1-2/+2
Centralise file open and buffer allocation to localize platform tweaks. git-svn-id: http://svn.drobilla.net/serd/trunk@244 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-09-29Tidy.David Robillard1-1/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@218 490d8e77-9747-427b-9fa3-0b8f29cee8a0