pub struct AppContext {Show 16 fields
pub app_name: String,
pub app_id: String,
pub channel: String,
pub app_version: Option<String>,
pub app_build: Option<String>,
pub architecture: Option<String>,
pub device_manufacturer: Option<String>,
pub device_model: Option<String>,
pub locale: Option<String>,
pub os: Option<String>,
pub os_version: Option<String>,
pub android_sdk_version: Option<String>,
pub debug_tag: Option<String>,
pub installation_date: Option<i64>,
pub home_directory: Option<String>,
pub custom_targeting_attributes: Option<Map<String, Value>>,
}
Expand description
The AppContext
object represents the parameters and characteristics of the
consuming application that we are interested in for targeting purposes. The
app_name
and channel
fields are not optional as they are expected
to be provided by all consuming applications as they are used in the top-level
targeting that help to ensure that an experiment is only processed
by the correct application.
Definitions of the fields are as follows:
app_name
: This is the name of the application (e.g. “Fenix” or “Firefox iOS”)app_id
: This is the application identifier, especially for mobile (e.g. “org.mozilla.fenix”)channel
: This is the delivery channel of the application (e.g “nightly”)app_version
: The user visible version string (e.g. “1.0.3”)app_build
: The build identifier generated by the CI system (e.g. “1234/A”)architecture
: The architecture of the device, (e.g. “arm”, “x86”)device_manufacturer
: The manufacturer of the device the application is running ondevice_model
: The model of the device the application is running onlocale
: The locale of the application during initialization (e.g. “es-ES”)os
: The name of the operating system (e.g. “Android”, “iOS”, “Darwin”, “Windows”)os_version
: The user-visible version of the operating system (e.g. “1.2.3”)android_sdk_version
: Android specific for targeting specific sdk versionsdebug_tag
: Used for debug purposes as a way to match only developer builds, etc.installation_date
: The date the application installed the apphome_directory
: The application’s home directorycustom_targeting_attributes
: Contains attributes specific to the application, derived by the application
Fields§
§app_name: String
§app_id: String
§channel: String
§app_version: Option<String>
§app_build: Option<String>
§architecture: Option<String>
§device_manufacturer: Option<String>
§device_model: Option<String>
§locale: Option<String>
§os: Option<String>
§os_version: Option<String>
§android_sdk_version: Option<String>
§debug_tag: Option<String>
§installation_date: Option<i64>
§home_directory: Option<String>
§custom_targeting_attributes: Option<Map<String, Value>>
Trait Implementations§
Source§impl Clone for AppContext
impl Clone for AppContext
Source§fn clone(&self) -> AppContext
fn clone(&self) -> AppContext
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<UT> ConvertError<UT> for AppContext
impl<UT> ConvertError<UT> for AppContext
fn try_convert_unexpected_callback_error( e: UnexpectedUniFFICallbackError, ) -> Result<Self>
Source§impl Debug for AppContext
impl Debug for AppContext
Source§impl Default for AppContext
impl Default for AppContext
Source§fn default() -> AppContext
fn default() -> AppContext
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for AppContext
impl<'de> Deserialize<'de> for AppContext
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl<UT> FfiConverter<UT> for AppContext
impl<UT> FfiConverter<UT> for AppContext
Source§const TYPE_ID_META: MetadataBuffer
const TYPE_ID_META: MetadataBuffer
Type ID metadata, serialized into a [MetadataBuffer].
Source§type FfiType = RustBuffer
type FfiType = RustBuffer
The low-level type used for passing values of this type over the FFI. Read more
Source§fn lower(v: Self) -> RustBuffer
fn lower(v: Self) -> RustBuffer
Lower a rust value of the target type, into an FFI value of type Self::FfiType. Read more
Source§fn try_lift(buf: RustBuffer) -> Result<Self>
fn try_lift(buf: RustBuffer) -> Result<Self>
Lift a rust value of the target type, from an FFI value of type Self::FfiType. Read more
Source§impl From<AppContext> for TargetingAttributes
impl From<AppContext> for TargetingAttributes
Source§fn from(app_context: AppContext) -> Self
fn from(app_context: AppContext) -> Self
Converts to this type from the input type.
Source§impl<UT> Lift<UT> for AppContext
impl<UT> Lift<UT> for AppContext
Source§impl<UT> LiftRef<UT> for AppContext
impl<UT> LiftRef<UT> for AppContext
type LiftType = AppContext
Source§impl<UT> LiftReturn<UT> for AppContext
impl<UT> LiftReturn<UT> for AppContext
Source§type ReturnType = <AppContext as Lift<UT>>::FfiType
type ReturnType = <AppContext as Lift<UT>>::FfiType
FFI return type for trait interfaces
Source§fn try_lift_successful_return(v: Self::ReturnType) -> Result<Self>
fn try_lift_successful_return(v: Self::ReturnType) -> Result<Self>
Lift a successfully returned value from a trait interface
§fn lift_foreign_return(
ffi_return: Self::ReturnType,
call_status: RustCallStatus,
) -> Self
fn lift_foreign_return( ffi_return: Self::ReturnType, call_status: RustCallStatus, ) -> Self
Lift a foreign returned value from a trait interface Read more
§fn lift_error(_buf: RustBuffer) -> Self
fn lift_error(_buf: RustBuffer) -> Self
Lift a Rust value for a callback interface method error result Read more
§fn handle_callback_unexpected_error(e: UnexpectedUniFFICallbackError) -> Self
fn handle_callback_unexpected_error(e: UnexpectedUniFFICallbackError) -> Self
Lift a Rust value for an unexpected callback interface error Read more
Source§impl<UT> Lower<UT> for AppContext
impl<UT> Lower<UT> for AppContext
Source§impl<UT> LowerError<UT> for AppContext
impl<UT> LowerError<UT> for AppContext
Source§fn lower_error(obj: Self) -> RustBuffer
fn lower_error(obj: Self) -> RustBuffer
Lower this value for scaffolding function return Read more
Source§impl<UT> LowerReturn<UT> for AppContext
impl<UT> LowerReturn<UT> for AppContext
Source§type ReturnType = <AppContext as Lower<UT>>::FfiType
type ReturnType = <AppContext as Lower<UT>>::FfiType
The type that should be returned by scaffolding functions for this type. Read more
Source§fn lower_return(v: Self) -> Result<Self::ReturnType, RustCallError>
fn lower_return(v: Self) -> Result<Self::ReturnType, RustCallError>
Lower the return value from an scaffolding call Read more
§fn handle_failed_lift(
error: LiftArgsError,
) -> Result<Self::ReturnType, RustCallError>
fn handle_failed_lift( error: LiftArgsError, ) -> Result<Self::ReturnType, RustCallError>
Lower the return value for failed argument lifts Read more
Source§impl Serialize for AppContext
impl Serialize for AppContext
Source§impl<UT> TypeId<UT> for AppContext
impl<UT> TypeId<UT> for AppContext
const TYPE_ID_META: MetadataBuffer
Auto Trait Implementations§
impl Freeze for AppContext
impl RefUnwindSafe for AppContext
impl Send for AppContext
impl Sync for AppContext
impl Unpin for AppContext
impl UnwindSafe for AppContext
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
Create a new handle for an Arc value Read more
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
Clone a handle Read more
§unsafe fn consume_handle(handle: Handle) -> Arc<T>
unsafe fn consume_handle(handle: Handle) -> Arc<T>
Consume a handle, getting back the initial
Arc<>
Read more