Skip to main content

Importer

Struct Importer 

Source
pub struct Importer<'a> { /* private fields */ }
Expand description

Importer for JSONL sync files.

The importer reads records from JSONL files and merges them into the local database using the specified merge strategy.

Implementations§

Source§

impl<'a> Importer<'a>

Source

pub fn new(storage: &'a mut SqliteStorage, strategy: MergeStrategy) -> Self

Create a new importer with the specified merge strategy.

Source

pub fn import(&mut self, path: &Path) -> SyncResult<ImportStats>

Import records from a JSONL file.

Each line in the file is parsed and merged into the local database. The merge strategy determines how conflicts are resolved.

§Errors

Returns an error if the file cannot be read or records are invalid.

Source

pub fn import_all(&mut self, dir: &Path) -> SyncResult<ImportStats>

Import all JSONL files from a directory.

Imports files in order: sessions, issues, context_items, memories, checkpoints. Then applies deletions last (to handle records that were created then deleted). Files that don’t exist are skipped.

§Errors

Returns an error if any file cannot be read.

Source

pub fn import_deletions(&mut self, path: &Path) -> SyncResult<usize>

Import deletions from a JSONL file.

Deletions are applied to the local database by removing the specified entities. This ensures that records deleted on one machine are deleted on all machines.

§Errors

Returns an error if the file cannot be read or deletions cannot be applied.

Auto Trait Implementations§

§

impl<'a> Freeze for Importer<'a>

§

impl<'a> !RefUnwindSafe for Importer<'a>

§

impl<'a> Send for Importer<'a>

§

impl<'a> !Sync for Importer<'a>

§

impl<'a> Unpin for Importer<'a>

§

impl<'a> UnsafeUnpin for Importer<'a>

§

impl<'a> !UnwindSafe for Importer<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more