pub enum BlobContent {
Data(Vec<u8>),
ContractBytecode(CompressedBytecode),
ServiceBytecode(CompressedBytecode),
}
Expand description
A blob of binary data.
Variants§
Data(Vec<u8>)
A generic data blob.
ContractBytecode(CompressedBytecode)
A blob containing contract bytecode.
ServiceBytecode(CompressedBytecode)
A blob containing service bytecode.
Implementations§
Source§impl BlobContent
impl BlobContent
Sourcepub fn new_with_id_unchecked(id: BlobId, bytes: Vec<u8>) -> Self
pub fn new_with_id_unchecked(id: BlobId, bytes: Vec<u8>) -> Self
Creates a new BlobContent
from the provided bytes and BlobId
. Does not check if the bytes match the ID!
Sourcepub fn new_data(bytes: Vec<u8>) -> Self
pub fn new_data(bytes: Vec<u8>) -> Self
Creates a new data BlobContent
from the provided bytes.
Sourcepub fn new_contract_bytecode(compressed_bytecode: CompressedBytecode) -> Self
pub fn new_contract_bytecode(compressed_bytecode: CompressedBytecode) -> Self
Creates a new contract bytecode BlobContent
from the provided bytes.
Sourcepub fn new_service_bytecode(compressed_bytecode: CompressedBytecode) -> Self
pub fn new_service_bytecode(compressed_bytecode: CompressedBytecode) -> Self
Creates a new service bytecode BlobContent
from the provided bytes.
Sourcepub fn with_blob_id_unchecked(self, blob_id: BlobId) -> Blob
pub fn with_blob_id_unchecked(self, blob_id: BlobId) -> Blob
Creates a Blob
without checking that this is the correct BlobId
.
Sourcepub fn with_blob_id_checked(self, blob_id: BlobId) -> Option<Blob>
pub fn with_blob_id_checked(self, blob_id: BlobId) -> Option<Blob>
Creates a Blob
checking that this is the correct BlobId
.
Sourcepub fn inner_bytes(&self) -> Vec<u8> ⓘ
pub fn inner_bytes(&self) -> Vec<u8> ⓘ
Gets the inner blob’s bytes.
Sourcepub fn blob_bytes(&self) -> BlobBytes
pub fn blob_bytes(&self) -> BlobBytes
Gets the BlobBytes
for this BlobContent
.
Trait Implementations§
Source§impl Clone for BlobContent
impl Clone for BlobContent
Source§fn clone(&self) -> BlobContent
fn clone(&self) -> BlobContent
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 Debug for BlobContent
impl Debug for BlobContent
Source§impl<'de> Deserialize<'de> for BlobContent
impl<'de> Deserialize<'de> for BlobContent
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 From<&BlobContent> for BlobType
impl From<&BlobContent> for BlobType
Source§fn from(content: &BlobContent) -> Self
fn from(content: &BlobContent) -> Self
Converts to this type from the input type.
Source§impl From<Blob> for BlobContent
impl From<Blob> for BlobContent
Source§fn from(blob: Blob) -> BlobContent
fn from(blob: Blob) -> BlobContent
Converts to this type from the input type.
Source§impl From<BlobContent> for Blob
impl From<BlobContent> for Blob
Source§fn from(content: BlobContent) -> Blob
fn from(content: BlobContent) -> Blob
Converts to this type from the input type.
Source§impl Hash for BlobContent
impl Hash for BlobContent
Source§impl InputType for BlobContent
impl InputType for BlobContent
Source§type RawValueType = BlobContent
type RawValueType = BlobContent
The raw type used for validator. Read more
Source§fn create_type_info(registry: &mut Registry) -> String
fn create_type_info(registry: &mut Registry) -> String
Create type information in the registry and return qualified typename.
Source§fn parse(value: Option<Value>) -> InputValueResult<Self>
fn parse(value: Option<Value>) -> InputValueResult<Self>
Parse from
Value
. None represents undefined.Source§fn as_raw_value(&self) -> Option<&Self::RawValueType>
fn as_raw_value(&self) -> Option<&Self::RawValueType>
Returns a reference to the raw value.
Source§fn qualified_type_name() -> String
fn qualified_type_name() -> String
Qualified typename.
Source§impl OutputType for BlobContent
impl OutputType for BlobContent
Source§fn create_type_info(registry: &mut Registry) -> String
fn create_type_info(registry: &mut Registry) -> String
Create type information in the registry and return qualified typename.
Source§async fn resolve(
&self,
_: &ContextSelectionSet<'_>,
_field: &Positioned<Field>,
) -> ServerResult<Value>
async fn resolve( &self, _: &ContextSelectionSet<'_>, _field: &Positioned<Field>, ) -> ServerResult<Value>
Resolve an output value to
async_graphql::Value
.Source§fn qualified_type_name() -> String
fn qualified_type_name() -> String
Qualified typename.
Source§impl ScalarType for BlobContent
impl ScalarType for BlobContent
Source§impl Serialize for BlobContent
impl Serialize for BlobContent
Source§impl WitStore for BlobContent
impl WitStore for BlobContent
Source§fn store<Instance>(
&self,
memory: &mut Memory<'_, Instance>,
location: GuestPointer,
) -> Result<(), RuntimeError>where
Instance: InstanceWithMemory,
<Instance::Runtime as Runtime>::Memory: RuntimeMemory<Instance>,
fn store<Instance>(
&self,
memory: &mut Memory<'_, Instance>,
location: GuestPointer,
) -> Result<(), RuntimeError>where
Instance: InstanceWithMemory,
<Instance::Runtime as Runtime>::Memory: RuntimeMemory<Instance>,
Stores the type at the
location
in the guest’s memory
.Source§fn lower<Instance>(
&self,
memory: &mut Memory<'_, Instance>,
) -> Result<<Self::Layout as Layout>::Flat, RuntimeError>where
Instance: InstanceWithMemory,
<Instance::Runtime as Runtime>::Memory: RuntimeMemory<Instance>,
fn lower<Instance>(
&self,
memory: &mut Memory<'_, Instance>,
) -> Result<<Self::Layout as Layout>::Flat, RuntimeError>where
Instance: InstanceWithMemory,
<Instance::Runtime as Runtime>::Memory: RuntimeMemory<Instance>,
Lowers the type into its flat layout representation. Read more
Source§impl WitType for BlobContent
impl WitType for BlobContent
Source§type Layout = HCons<u8, <<HCons<Vec<u8>, HNil> as WitType>::Layout as Merge<<<HCons<CompressedBytecode, HNil> as WitType>::Layout as Merge<<HCons<CompressedBytecode, HNil> as WitType>::Layout>>::Output>>::Output>
type Layout = HCons<u8, <<HCons<Vec<u8>, HNil> as WitType>::Layout as Merge<<<HCons<CompressedBytecode, HNil> as WitType>::Layout as Merge<<HCons<CompressedBytecode, HNil> as WitType>::Layout>>::Output>>::Output>
The layout of the type as fundamental types.
Source§type Dependencies = HCons<Vec<u8>, HCons<CompressedBytecode, HCons<CompressedBytecode, HNil>>>
type Dependencies = HCons<Vec<u8>, HCons<CompressedBytecode, HCons<CompressedBytecode, HNil>>>
Other
WitType
s that this type depends on.Source§fn wit_type_name() -> Cow<'static, str>
fn wit_type_name() -> Cow<'static, str>
Generates the WIT type name for this type.
Source§fn wit_type_declaration() -> Cow<'static, str>
fn wit_type_declaration() -> Cow<'static, str>
Generates the WIT type declaration for this type.
Auto Trait Implementations§
impl Freeze for BlobContent
impl RefUnwindSafe for BlobContent
impl Send for BlobContent
impl Sync for BlobContent
impl Unpin for BlobContent
impl UnwindSafe for BlobContent
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,
Source§impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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 moreSource§impl<M, I> RuntimeMemory<&mut I> for Mwhere
M: RuntimeMemory<I>,
impl<M, I> RuntimeMemory<&mut I> for Mwhere
M: RuntimeMemory<I>,
Source§fn read<'instance>(
&self,
instance: &'instance &mut I,
location: GuestPointer,
length: u32,
) -> Result<Cow<'instance, [u8]>, RuntimeError>
fn read<'instance>( &self, instance: &'instance &mut I, location: GuestPointer, length: u32, ) -> Result<Cow<'instance, [u8]>, RuntimeError>
Reads length
bytes from memory from the provided location
.
Source§fn write(
&mut self,
instance: &mut &mut I,
location: GuestPointer,
bytes: &[u8],
) -> Result<(), RuntimeError>
fn write( &mut self, instance: &mut &mut I, location: GuestPointer, bytes: &[u8], ) -> Result<(), RuntimeError>
Writes the bytes
to memory at the provided location
.