is_selectable (backend.rs)

himalaya · src/imap/backend.rs · rust · Apache-2.0
email, auth, integration, tag:imap-adapter, tag:backend-glue

IMAP adapter for the shared cross-protocol client. ! ! Thin glue over [`ImapClient`], which already wraps io_imap's ! high-level session (`select`, `fetch`, `store`, `copy`, `move`, ! `append`, `list`, `status`). Each method takes and returns the ! CLI's shared [`crate::email`]

// Source: https://github.com/pimalaya/himalaya | License: Apache-2.0 | Copyright 2022-2026 soywod <pimalaya.org@posteo.net>
// Provided via justclaw.it.com; keep this notice with the code.
//! # IMAP backend
//!
//! The IMAP adapter of the shared cross-protocol client, glue over the
//! io-imap session [`ImapClient`] already wraps.
//!
//! Each method takes and returns the CLI's own [`crate::email`] types, so
//! the work here is converting between those and io-imap's wire types.

use io_imap::client::ImapClient as _;
use std::{
    collections::{BTreeMap, BTreeSet},
    num::NonZeroU32,
    str::from_utf8,
};

use anyhow::{Result, anyhow, bail};
use chrono::{DateTime, FixedOffset};
use io_imap::{
    rfc3501::{
        append::ImapMessageAppendOptions,
        copy::{ImapCopyUid, ImapMes

... (truncated -- full source via MCP)

See the full source, get the GitHub permalink, and search for more like it.

Get a free API key