Tpt
2866e1e3bd
Introduces a custom error type for the SPARQL parser
...
The SPARQL parser and algebra does not directly depends now on the other parts of Oxigraph outside of the RDF model
5 years ago
Tpt
eeda469f1d
Sled: makes Clippy happy
5 years ago
Tpt
feaca89f77
Moves NamedNodeOrVariable and TermOrVariable to the SPARQL algebra
...
These data structures are part of the SPARQL algebra
5 years ago
Tpt
98a4d40a7e
Cleans up the Variable structure to only represent actual variables
...
There should be now a sane blank node support in the SPARQL algebra.
They are now allowed only in places where they are allowed by the SPARQL syntax
5 years ago
Tpt
f4f542ce00
Removes unimplemented! macro calls for SPARQL results formats
5 years ago
Tpt
4e3f72769f
Fixes CI
5 years ago
Tpt
dc08e181a8
Adds an other store based on Sled
5 years ago
Tpt
8b88a7576c
Avoids box in RocksStore.quads_for_pattern
5 years ago
Tpt
fd4655b4e8
Removes useless errors related to serialization
...
We only serialize into vec no need for a generic API
5 years ago
Tpt
4c7936e5be
BREAKING: Uses SipHash instead of MD5 for term hashing
5 years ago
Tpt
febaad9bdb
Adds new easy equality method to NamedNode
5 years ago
Tpt
42fafbe57f
Avoids using the big oxigraph::Error in model structures
5 years ago
Tpt
fa2d6c412f
Simplifies MemoryStore.quads_for_pattern signature
5 years ago
Tpt
480d3a0077
Small documentation improvements
5 years ago
Tpt
cdb4cc4a39
Simplifies the public API
5 years ago
Tpt
2d31de987a
Introduces ReadableEncodedStore
5 years ago
Tpt
16451b7c53
Reduces the number of considered "problem variables" in OPTIONAL
...
Runs the optional-filter tests
5 years ago
Tpt
e8648ffc76
Adds the StrHash structure
...
Allows to distinguish string hashes from other u128
5 years ago
Tpt
2b85a06487
Migrates to oxiri and oxilangtag
5 years ago
Tpt
2bbe29c31a
Upgrades RocksDB to 0.14
5 years ago
Pierre-Antoine Champin
5022a09573
add destruct method to Literal and Quad
...
This is (again) useful for building bridges to other APIs.
Note that NamedNode already has this (into_string),
that BlankNode kind of has it (id)
and that Quad has incomplete versions of it (subject_owned, predicate_owned...).
So I don't think those are too disruptive.
5 years ago
Pierre-Antoine Champin
b93c6e0ae6
fix BlankNode::as_str
...
Before that patch, it would return a string padded with null characters,
which is not a valid BLANK_NODE_IDENTIFIER in RDF syntaxes.
5 years ago
Pierre-Antoine Champin
2352fc2384
complete documentation
5 years ago
Pierre-Antoine Champin
cc6ca5fe1e
making unchecked constructor of Literal public
...
for the same reason as before: bindings to other languages/APIs can benefit from this
5 years ago
Tpt
4c9bd52614
Validates language tags
...
Makes also sure their are all lowercase
Closes #24
5 years ago
Tpt
a8dbc94d6f
Improves Error type documentation
5 years ago
Tpt
beb7192e22
Removes ModelError
...
We could keep one error class and avoid allocation for common errors by adding variants to the main ErrorKind enumeration
5 years ago
Tpt
23f5ac78ed
Drops dependency on anyhow to get something implementing std::error::Error
...
Closes #25
5 years ago
Tpt
73f61884c1
Breaking: Uses anyhow instead of failure
...
Closes #25
5 years ago
Pierre-Antoine Champin
053335b431
open API for creating unchecked NamedNode
...
Again, this will be useful for bindings to other languages and APIs,
where IRIs have been checked elsewhere, and hence do not need another parsing.
Renamed new_from_string to new_unchecked, to make explicit the unchecked
nature of this method (now that it is public).
5 years ago
Pierre-Antoine Champin
816798d006
open blank_node inners
...
This is required by libraries binding Oxigraph to other languages or other APIs.
5 years ago
Tpt
52bb5274cd
Enforces Rust 2018 idioms
5 years ago
Tpt
0265adbafc
Avoids unwrap() in From implementations
5 years ago
Tpt
ee39f162aa
Upgrades to peg 0.6
...
Improves performances by 50%
5 years ago
Tpt
03d08917c4
Optimizes the SPARQL parser
...
Provides a 68% improvement
5 years ago
Tpt
329a80bc8c
Makes new Clippy lints pass
5 years ago
Tpt
b530af153f
Adds WebAssembly support to Oxigraph lib
5 years ago
Tpt
8c4c273edf
[Breaking] Uses big endian encoding
...
Allows to do range search based on byte representation
5 years ago
Tpt
1f903335ff
Avoids unsafe everywhere in the library
5 years ago
Tpt
7cd5558d2b
Adds extra compiler and Clippy lints
5 years ago
Tpt
e6124c5fe3
Drops the dependency on byteorder
5 years ago
Tpt
603b58c856
Drops the dependency on num_traits
5 years ago
Tpt
c49da613ea
Reduces lazy_static usages
5 years ago
Tpt
10b1fa68f3
Adds native xsd:duration xsd:dateTime xsd:date and xsd:time structures
5 years ago
Tpt
8aa5bf4ceb
Drops EncodedTerm Ord and PartialOrd implementations
5 years ago
Tpt
8c115abc19
Uses HashSet and HashMap in MemoryRepository
5 years ago
Tpt
4a2daeb739
Adds back float to decimal casts
5 years ago
Tpt
87f2823688
Upgrades to Rust 1.40
5 years ago
Tpt
1bd91f6797
Simplifies slightly the iteration code
5 years ago
Tpt
e0bbe29dc2
Use our own xsd:decimal implementation and restrict xsd:integer precision to 64bits
5 years ago