Skip to main content

Extendible

Trait Extendible 

pub trait Extendible:
    Sized
    + Serialize
    + 'static {
    // Required methods
    fn schema_mut() -> &'static LazyLock<RwLock<Object>>;
    fn validators(    ) -> &'static RwLock<Vec<Box<dyn Fn(&Map<String, Value>, &mut dyn FnMut() -> Path, &mut Report) + Sync + Send>>>;
    fn overlay_map_mut(&mut self) -> &mut Map<String, Value>;
    fn overlay_map(&self) -> &Map<String, Value>;

    // Provided methods
    fn merged_schema() -> RefOr<Schema> { ... }
    fn parse_extended<E>(&self) -> Result<E, Error>
       where E: DeserializeOwned { ... }
    fn insert_extension<E>(&mut self, ext_value: E) -> Result<(), Error>
       where E: Serialize { ... }
}

Required Methods§

fn schema_mut() -> &'static LazyLock<RwLock<Object>>

fn validators() -> &'static RwLock<Vec<Box<dyn Fn(&Map<String, Value>, &mut dyn FnMut() -> Path, &mut Report) + Sync + Send>>>

fn overlay_map_mut(&mut self) -> &mut Map<String, Value>

fn overlay_map(&self) -> &Map<String, Value>

Provided Methods§

fn merged_schema() -> RefOr<Schema>

fn parse_extended<E>(&self) -> Result<E, Error>

fn insert_extension<E>(&mut self, ext_value: E) -> Result<(), Error>
where E: Serialize,

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl Extendible for AdminApiAdminActivity

Source§

impl Extendible for AdminApiAnnouncement

Source§

impl Extendible for ApiAnnouncement

Source§

impl Extendible for AdminApiBackupConfiguration

Source§

impl Extendible for AdminApiDatabaseHost

Source§

impl Extendible for ApiDatabaseHost

Source§

impl Extendible for AdminApiEggConfiguration

Source§

impl Extendible for ApiEggConfiguration

Source§

impl Extendible for AdminApiEggRepository

Source§

impl Extendible for AdminApiEggRepositoryEgg

Source§

impl Extendible for AdminApiLocation

Source§

impl Extendible for AdminApiLocationDatabaseHost

Source§

impl Extendible for AdminApiMount

Source§

impl Extendible for AdminApiNest

Source§

impl Extendible for AdminApiNestEgg

Source§

impl Extendible for ApiNestEgg

Source§

impl Extendible for AdminApiNestEggMount

Source§

impl Extendible for AdminApiNestEggVariable

Source§

impl Extendible for AdminApiNode

Source§

impl Extendible for AdminApiNodeAllocation

Source§

impl Extendible for AdminApiNodeMount

Source§

impl Extendible for AdminApiOAuthProvider

Source§

impl Extendible for ApiOAuthProvider

Source§

impl Extendible for AdminApiRole

Source§

impl Extendible for AdminApiServer

Source§

impl Extendible for ApiServer

Source§

impl Extendible for ApiServerFeatureLimits

Source§

impl Extendible for ApiServerActivity

Source§

impl Extendible for ApiServerAllocation

Source§

impl Extendible for AdminApiServerBackup

Source§

impl Extendible for ApiServerBackup

Source§

impl Extendible for AdminApiServerDatabase

Source§

impl Extendible for ApiServerDatabase

Source§

impl Extendible for AdminApiServerMount

Source§

impl Extendible for ApiServerMount

Source§

impl Extendible for ApiServerSchedule

Source§

impl Extendible for ApiServerScheduleStep

Source§

impl Extendible for ApiServerSubuser

Source§

impl Extendible for ApiServerVariable

Source§

impl Extendible for AdminApiUser

Source§

impl Extendible for ApiFullUser

Source§

impl Extendible for ApiUser

Source§

impl Extendible for ApiUserActivity

Source§

impl Extendible for ApiUserApiKey

Source§

impl Extendible for ApiUserCommandSnippet

Source§

impl Extendible for ApiUserSecurityKey

Source§

impl Extendible for ApiUserServerGroup

Source§

impl Extendible for ApiUserSession

Source§

impl Extendible for ApiUserSshKey