pub struct Block {
hash: HeaderId,
contents: Mutex<Option<Arc<ExplorerBlock>>>,
}
Fields§
§hash: HeaderId
§contents: Mutex<Option<Arc<ExplorerBlock>>>
Implementations§
source§impl Block
impl Block
async fn from_string_hash(hash: String, db: &ExplorerDb) -> FieldResult<Block>
fn from_valid_hash(hash: HeaderHash) -> Block
fn from_contents(block: Arc<ExplorerBlock>) -> Block
async fn fetch_explorer_block( &self, db: &ExplorerDb ) -> FieldResult<Arc<ExplorerBlock>>
async fn get_branches(&self, db: &ExplorerDb) -> FieldResult<Vec<Branch>>
source§impl Block
impl Block
A Block
sourcepub async fn date(&self, context: &Context<'_>) -> FieldResult<BlockDate>
pub async fn date(&self, context: &Context<'_>) -> FieldResult<BlockDate>
Date the Block was included in the blockchain
sourcepub async fn transactions(
&self,
context: &Context<'_>,
first: Option<i32>,
last: Option<i32>,
before: Option<String>,
after: Option<String>
) -> FieldResult<Connection<IndexCursor, Transaction, ConnectionFields<u64>, EmptyFields>>
pub async fn transactions( &self, context: &Context<'_>, first: Option<i32>, last: Option<i32>, before: Option<String>, after: Option<String> ) -> FieldResult<Connection<IndexCursor, Transaction, ConnectionFields<u64>, EmptyFields>>
The transactions contained in the block
pub async fn chain_length( &self, context: &Context<'_> ) -> FieldResult<ChainLength>
pub async fn leader(&self, context: &Context<'_>) -> FieldResult<Option<Leader>>
pub async fn previous_block(&self, context: &Context<'_>) -> FieldResult<Block>
pub async fn total_input(&self, context: &Context<'_>) -> FieldResult<Value>
pub async fn total_output(&self, context: &Context<'_>) -> FieldResult<Value>
pub async fn is_confirmed(&self, context: &Context<'_>) -> Result<bool>
pub async fn branches(&self, context: &Context<'_>) -> FieldResult<Vec<Branch>>
Trait Implementations§
source§impl ContainerType for Block
impl ContainerType for Block
source§fn resolve_field<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
ctx: &'life1 Context<'life2>
) -> Pin<Box<dyn Future<Output = ServerResult<Option<Value>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn resolve_field<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, ctx: &'life1 Context<'life2> ) -> Pin<Box<dyn Future<Output = ServerResult<Option<Value>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,
Resolves a field value and outputs it as a json value
async_graphql::Value
. Read moresource§fn find_entity<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
ctx: &'life1 Context<'life2>,
params: &'life3 Value
) -> Pin<Box<dyn Future<Output = ServerResult<Option<Value>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn find_entity<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, ctx: &'life1 Context<'life2>, params: &'life3 Value ) -> Pin<Box<dyn Future<Output = ServerResult<Option<Value>>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,
Find the GraphQL entity with the given name from the parameter. Read more
source§impl OutputType for Block
impl OutputType for Block
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 resolve<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
ctx: &'life1 ContextSelectionSet<'life2>,
_field: &'life3 Positioned<Field>
) -> Pin<Box<dyn Future<Output = ServerResult<Value>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn resolve<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, ctx: &'life1 ContextSelectionSet<'life2>, _field: &'life3 Positioned<Field> ) -> Pin<Box<dyn Future<Output = ServerResult<Value>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,
Resolve an output value to
async_graphql::Value
.§fn qualified_type_name() -> String
fn qualified_type_name() -> String
Qualified typename.
§fn introspection_type_name(&self) -> Cow<'static, str>
fn introspection_type_name(&self) -> Cow<'static, str>
Introspection type name Read more
impl ObjectType for Block
Auto Trait Implementations§
impl !RefUnwindSafe for Block
impl Send for Block
impl Sync for Block
impl Unpin for Block
impl !UnwindSafe for Block
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
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request