parent
33cf49b354
commit
7dc8760fa4
1 changed files with 15 additions and 3 deletions
18
README.md
18
README.md
|
@ -109,14 +109,26 @@ fn main() {
|
|||
}
|
||||
```
|
||||
|
||||
after adding it to your project's dependencies (eg, `cargo add julid-rs`; note the package name is
|
||||
after adding it to your project's dependencies (eg, `cargo add julid-rs`; the package name is
|
||||
"julid-rs", but the library name as used in your `use` statements is just "julid"). By default, it
|
||||
will also include trait implementations for using Julids with
|
||||
[SQLx](https://github.com/launchbadge/sqlx), and serializing/deserializing with
|
||||
[Serde](https://serde.rs/), via the `sqlx` and `serde` features, respectively. One final default
|
||||
optional feature, `chrono`, uses the Chrono crate to return the timestamp as a
|
||||
[`DateTime`](https://docs.rs/chrono/latest/chrono/struct.DateTime.html) by adding a `created_at(&self)`
|
||||
method to `Julid`.
|
||||
[`DateTime`](https://docs.rs/chrono/latest/chrono/struct.DateTime.html) by adding a
|
||||
`created_at(&self)` method to `Julid`. See the simple
|
||||
[example](https://gitlab.com/nebkor/julid/-/blob/main/examples/benchmark.rs) in the repo.
|
||||
|
||||
Something to note: don't enable the `plugin` feature in your Cargo.toml if you're using this crate
|
||||
inside your Rust application, *especially* if you're also loading it as an extension in SQLite in
|
||||
your application. You'll get a long and confusing runtime panic due to there being multiple
|
||||
entrypoints defined with the same name.
|
||||
|
||||
## Safety
|
||||
There is one `unsafe fn` in this project, `sqlite_julid_init()`, and it is only built for the
|
||||
`plugin` feature. The reason for it is that it's interacting with foreign code (SQLite itself) via
|
||||
the C interface, which is inherently unsafe. If you are not building the plugin, there is no
|
||||
`unsafe` code.
|
||||
|
||||
# Thanks
|
||||
|
||||
|
|
Loading…
Reference in a new issue