mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-11 16:31:07 +00:00
Split out joiner.
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
use slicable::Slicable;
|
||||
|
||||
pub trait Joiner {
|
||||
fn join<T: Slicable + Sized>(self, value: &T) -> Self;
|
||||
}
|
||||
|
||||
impl Joiner for Vec<u8> {
|
||||
fn join<T: Slicable + Sized>(mut self, value: &T) -> Vec<u8> {
|
||||
value.as_slice_then(|s| self.extend_from_slice(s));
|
||||
self
|
||||
}
|
||||
}
|
||||
@@ -6,6 +6,7 @@ extern crate runtime_support;
|
||||
|
||||
mod endiansensitive;
|
||||
mod streamreader;
|
||||
mod joiner;
|
||||
mod slicable;
|
||||
mod primitives;
|
||||
mod keyedvec;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
use streamreader::{StreamReader, Joiner};
|
||||
use streamreader::StreamReader;
|
||||
use joiner::Joiner;
|
||||
use slicable::{Slicable, NonTrivialSlicable};
|
||||
use function::Function;
|
||||
use runtime_support::size_of;
|
||||
@@ -170,7 +171,7 @@ impl Slicable for Block {
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
use streamreader::Joiner;
|
||||
use joiner::Joiner;
|
||||
use function::Function;
|
||||
|
||||
#[test]
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
use runtime_support::{Vec, size_of, transmute, uninitialized, slice};
|
||||
use streamreader::Joiner;
|
||||
use joiner::Joiner;
|
||||
use endiansensitive::EndianSensitive;
|
||||
|
||||
/// Trait that allows zero-copy read/write of value-references to/from slices in LE format.
|
||||
|
||||
@@ -20,17 +20,6 @@ impl<'a> StreamReader<'a> {
|
||||
Slicable::from_slice(slice)
|
||||
}
|
||||
}
|
||||
|
||||
pub trait Joiner {
|
||||
fn join<T: Slicable + Sized>(self, value: &T) -> Self;
|
||||
}
|
||||
|
||||
impl Joiner for Vec<u8> {
|
||||
fn join<T: Slicable + Sized>(mut self, value: &T) -> Vec<u8> {
|
||||
value.as_slice_then(|s| self.extend_from_slice(s));
|
||||
self
|
||||
}
|
||||
}
|
||||
/*
|
||||
// Not in use yet
|
||||
// TODO: introduce fn size_will_be(&self) -> usize; to Slicable trait and implement
|
||||
|
||||
@@ -74,7 +74,7 @@ pub fn set_code(new: &[u8]) {
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use streamreader::Joiner;
|
||||
use joiner::Joiner;
|
||||
use function::Function;
|
||||
use std::collections::HashMap;
|
||||
use runtime_support::{NoError, with_externalities, Externalities};
|
||||
|
||||
Reference in New Issue
Block a user