mirror of
https://github.com/ankitects/anki.git
synced 2025-09-21 15:32:23 -04:00

* Implement custom study on backend * Switch frontend to backend custom study * Skip typecheck for new pb classes * Build tag search string on backend Also fixes escaping of special characters in tag names. * `cram.cards` -> `cram.card_limit` * Assign more meaningful names in `TagLimit` * Broaden rustfmt glob * Use `invalid_input()` helper * Assign `FilteredDeckForUpdate` to temp var * Implement `SearchBuilder` * Rewrite `custom_study()` with `SearchBuilder` * Replace match macros with `SearchBuilder` * Remove `into_nodes_list` & `concatenate_searches`
22 lines
679 B
Rust
22 lines
679 B
Rust
// Copyright: Ankitects Pty Ltd and contributors
|
|
// License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
|
|
|
|
pub use slog::{debug, Logger};
|
|
|
|
pub(crate) use crate::types::IntoNewtypeVec;
|
|
pub use crate::{
|
|
card::{Card, CardId},
|
|
collection::Collection,
|
|
config::BoolKey,
|
|
deckconfig::{DeckConfig, DeckConfigId},
|
|
decks::{Deck, DeckId, DeckKind, NativeDeckName},
|
|
error::{AnkiError, Result},
|
|
i18n::I18n,
|
|
notes::{Note, NoteId},
|
|
notetype::{Notetype, NotetypeId},
|
|
ops::{Op, OpChanges, OpOutput},
|
|
revlog::RevlogId,
|
|
search::{SearchBuilder, TryIntoSearch},
|
|
timestamp::{TimestampMillis, TimestampSecs},
|
|
types::Usn,
|
|
};
|