diff --git a/Cargo.lock b/Cargo.lock
index 6cdb6f53f..236969732 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -6,7 +6,6 @@ dependencies = [
"ctrlc 1.0.1 (git+https://github.com/tomusdrw/rust-ctrlc.git)",
"daemonize 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"docopt 0.6.78 (registry+https://github.com/rust-lang/crates.io-index)",
- "docopt_macros 0.6.81 (registry+https://github.com/rust-lang/crates.io-index)",
"env_logger 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"ethcore 0.9.99",
"ethcore-rpc 0.9.99",
@@ -20,7 +19,7 @@ dependencies = [
[[package]]
name = "aho-corasick"
-version = "0.5.0"
+version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"memchr 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -37,10 +36,10 @@ dependencies = [
[[package]]
name = "aster"
-version = "0.12.0"
+version = "0.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "syntex_syntax 0.28.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syntex_syntax 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -69,7 +68,7 @@ version = "0.0.42"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"regex-syntax 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "semver 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "semver 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-normalization 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -130,14 +129,6 @@ dependencies = [
"strsim 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
-[[package]]
-name = "docopt_macros"
-version = "0.6.81"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "docopt 0.6.78 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
[[package]]
name = "elastic-array"
version = "0.4.0"
@@ -155,14 +146,14 @@ dependencies = [
[[package]]
name = "eth-secp256k1"
version = "0.5.4"
-source = "git+https://github.com/arkpar/rust-secp256k1.git#321e6c22a83606d1875f89cb61c9cb37c7d249ae"
+source = "git+https://github.com/arkpar/rust-secp256k1.git#45503e1de68d909b1862e3f2bdb9e1cdfdff3f1e"
dependencies = [
"arrayvec 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
"gcc 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",
"rand 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -171,7 +162,6 @@ name = "ethash"
version = "0.9.99"
dependencies = [
"log 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "lru-cache 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
"sha3 0.1.0",
]
@@ -179,6 +169,7 @@ dependencies = [
name = "ethcore"
version = "0.9.99"
dependencies = [
+ "clippy 0.0.42 (registry+https://github.com/rust-lang/crates.io-index)",
"crossbeam 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"env_logger 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"ethash 0.9.99",
@@ -197,18 +188,15 @@ dependencies = [
name = "ethcore-rpc"
version = "0.9.99"
dependencies = [
-<<<<<<< HEAD
-=======
"clippy 0.0.42 (registry+https://github.com/rust-lang/crates.io-index)",
->>>>>>> rustup
"ethcore 0.9.99",
"ethcore-util 0.9.99",
"ethsync 0.9.99",
"jsonrpc-core 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
"jsonrpc-http-server 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde_codegen 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde_codegen 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"syntex 0.28.0 (registry+https://github.com/rust-lang/crates.io-index)",
"target_info 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -219,10 +207,7 @@ name = "ethcore-util"
version = "0.9.99"
dependencies = [
"arrayvec 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
-<<<<<<< HEAD
-=======
"clippy 0.0.42 (registry+https://github.com/rust-lang/crates.io-index)",
->>>>>>> rustup
"crossbeam 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
"elastic-array 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"env_logger 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -238,7 +223,7 @@ dependencies = [
"rocksdb 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rust-crypto 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)",
"sha3 0.1.0",
"slab 0.1.4 (git+https://github.com/arkpar/slab.git)",
"target_info 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -250,10 +235,7 @@ dependencies = [
name = "ethsync"
version = "0.9.99"
dependencies = [
-<<<<<<< HEAD
-=======
"clippy 0.0.42 (registry+https://github.com/rust-lang/crates.io-index)",
->>>>>>> rustup
"env_logger 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
"ethcore 0.9.99",
"ethcore-util 0.9.99",
@@ -367,8 +349,8 @@ name = "jsonrpc-core"
version = "1.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "serde 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde_codegen 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde_codegen 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"syntex 0.28.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -416,11 +398,6 @@ name = "libc"
version = "0.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-[[package]]
-name = "linked-hash-map"
-version = "0.0.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
[[package]]
name = "log"
version = "0.3.5"
@@ -429,14 +406,6 @@ dependencies = [
"libc 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
]
-[[package]]
-name = "lru-cache"
-version = "0.0.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "linked-hash-map 0.0.8 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
[[package]]
name = "matches"
version = "0.1.2"
@@ -456,7 +425,7 @@ version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"log 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -522,7 +491,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "num"
-version = "0.1.30"
+version = "0.1.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"rand 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -546,20 +515,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "quasi"
-version = "0.6.0"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "syntex_syntax 0.28.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syntex_syntax 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "quasi_codegen"
-version = "0.6.0"
+version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "aster 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "syntex 0.28.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "syntex_syntax 0.28.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "aster 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syntex 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syntex_syntax 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -575,7 +544,7 @@ name = "regex"
version = "0.1.51"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "aho-corasick 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "aho-corasick 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
"memchr 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
"regex-syntax 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"utf8-ranges 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -613,7 +582,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "rustc_version"
-version = "0.1.6"
+version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"semver 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -626,7 +595,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "semver"
-version = "0.2.2"
+version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"nom 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -634,22 +603,22 @@ dependencies = [
[[package]]
name = "serde"
-version = "0.6.13"
+version = "0.6.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "num 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num 0.1.31 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "serde_codegen"
-version = "0.6.13"
+version = "0.6.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "aster 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "quasi 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "quasi_codegen 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "syntex 0.28.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "syntex_syntax 0.28.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "aster 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "quasi 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "quasi_codegen 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syntex 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syntex_syntax 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -657,8 +626,8 @@ name = "serde_json"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "num 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num 0.1.31 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde 0.6.14 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -700,6 +669,14 @@ dependencies = [
"syntex_syntax 0.28.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
+[[package]]
+name = "syntex"
+version = "0.29.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "syntex_syntax 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
[[package]]
name = "syntex_syntax"
version = "0.28.0"
@@ -713,6 +690,19 @@ dependencies = [
"unicode-xid 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
+[[package]]
+name = "syntex_syntax"
+version = "0.29.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)",
+ "term 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
+ "unicode-xid 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
[[package]]
name = "target_info"
version = "0.1.0"
@@ -757,7 +747,7 @@ name = "unicase"
version = "1.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "rustc_version 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc_version 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
diff --git a/Cargo.toml b/Cargo.toml
index 8b9924a54..6ffc3d2b2 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -10,7 +10,6 @@ log = "0.3"
env_logger = "0.3"
rustc-serialize = "0.3"
docopt = "0.6"
-docopt_macros = "0.6"
ctrlc = { git = "https://github.com/tomusdrw/rust-ctrlc.git" }
clippy = { version = "0.0.42", optional = true }
ethcore-util = { path = "util" }
diff --git a/ethcore/src/lib.rs b/ethcore/src/lib.rs
index 093906bd0..8c9fcaff1 100644
--- a/ethcore/src/lib.rs
+++ b/ethcore/src/lib.rs
@@ -15,8 +15,6 @@
// along with Parity. If not, see .
#![warn(missing_docs)]
-#![feature(cell_extras)]
-#![feature(augmented_assignments)]
#![cfg_attr(feature="dev", feature(plugin))]
#![cfg_attr(feature="dev", plugin(clippy))]
// TODO [todr] not really sure
diff --git a/util/Cargo.toml b/util/Cargo.toml
index 25626780f..ff3fbc5dc 100644
--- a/util/Cargo.toml
+++ b/util/Cargo.toml
@@ -6,9 +6,6 @@ name = "ethcore-util"
version = "0.9.99"
authors = ["Ethcore "]
-[features]
-default = [ "heapsize/nightly" ]
-
[dependencies]
log = "0.3"
env_logger = "0.3"
@@ -36,4 +33,4 @@ igd = "0.4.2"
[features]
default = []
-dev = ["clippy"]
\ No newline at end of file
+dev = ["clippy"]
diff --git a/util/src/hash.rs b/util/src/hash.rs
index 2e6c565b4..924465e70 100644
--- a/util/src/hash.rs
+++ b/util/src/hash.rs
@@ -413,15 +413,6 @@ macro_rules! impl_hash {
}
}
- /// Moving BitOrAssign
- impl<'a> BitOrAssign<&'a $from> for $from {
- fn bitor_assign(&mut self, rhs: &'a Self) {
- for i in 0..$size {
- self.0[i] = self.0[i] | rhs.0[i];
- }
- }
- }
-
/// BitAnd on references
impl <'a> BitAnd for &'a $from {
type Output = $from;
diff --git a/util/src/lib.rs b/util/src/lib.rs
index 0a2b0f4b4..ef76bb885 100644
--- a/util/src/lib.rs
+++ b/util/src/lib.rs
@@ -15,12 +15,8 @@
// along with Parity. If not, see .
#![warn(missing_docs)]
-#![feature(op_assign_traits)]
-#![feature(augmented_assignments)]
-#![feature(associated_consts)]
#![cfg_attr(feature="dev", feature(plugin))]
#![cfg_attr(feature="dev", plugin(clippy))]
-#![feature(catch_panic)]
// Clippy settings
// TODO [todr] not really sure
#![allow(needless_range_loop)]
diff --git a/util/src/panics.rs b/util/src/panics.rs
index 27dd605f0..bc22282d2 100644
--- a/util/src/panics.rs
+++ b/util/src/panics.rs
@@ -40,6 +40,18 @@ pub trait MayPanic {
fn on_panic(&self, closure: F) where F: OnPanicListener;
}
+struct PanicGuard<'a> {
+ handler: &'a PanicHandler,
+}
+
+impl<'a> Drop for PanicGuard<'a> {
+ fn drop(&mut self) {
+ if thread::panicking() {
+ self.handler.notify_all("Panic!".to_owned());
+ }
+ }
+}
+
/// Structure that allows to catch panics and notify listeners
pub struct PanicHandler {
listeners: Mutex>>
@@ -63,16 +75,9 @@ impl PanicHandler {
#[allow(deprecated)]
// TODO [todr] catch_panic is deprecated but panic::recover has different bounds (not allowing mutex)
pub fn catch_panic(&self, g: G) -> thread::Result where G: FnOnce() -> R + Send + 'static {
- let result = thread::catch_panic(g);
-
- if let Err(ref e) = result {
- let res = convert_to_string(e);
- if let Some(r) = res {
- self.notify_all(r);
- }
- }
-
- result
+ let guard = PanicGuard { handler: self };
+ let result = g();
+ Ok(result)
}
fn notify_all(&self, r: String) {
diff --git a/util/src/rlp/bytes.rs b/util/src/rlp/bytes.rs
index 3b25c09ae..305ec9088 100644
--- a/util/src/rlp/bytes.rs
+++ b/util/src/rlp/bytes.rs
@@ -232,12 +232,12 @@ impl_uint_from_bytes!(u64);
impl_uint_from_bytes!(usize);
macro_rules! impl_uint_from_bytes {
- ($name: ident) => {
+ ($name: ident, $size: expr) => {
impl FromBytes for $name {
fn from_bytes(bytes: &[u8]) -> FromBytesResult<$name> {
if !bytes.is_empty() && bytes[0] == 0 {
Err(FromBytesError::ZeroPrefixedInt)
- } else if bytes.len() <= $name::SIZE {
+ } else if bytes.len() <= $size {
Ok($name::from(bytes))
} else {
Err(FromBytesError::DataIsTooLong)
@@ -247,8 +247,8 @@ macro_rules! impl_uint_from_bytes {
}
}
-impl_uint_from_bytes!(U256);
-impl_uint_from_bytes!(U128);
+impl_uint_from_bytes!(U256, 256);
+impl_uint_from_bytes!(U128, 128);
impl FromBytes for T where T: FixedHash {
fn from_bytes(bytes: &[u8]) -> FromBytesResult {
diff --git a/util/src/rlp/untrusted_rlp.rs b/util/src/rlp/untrusted_rlp.rs
index 463d5cb2f..957a09b61 100644
--- a/util/src/rlp/untrusted_rlp.rs
+++ b/util/src/rlp/untrusted_rlp.rs
@@ -429,7 +429,6 @@ impl Decodable for Option where T: Decodable {
macro_rules! impl_array_decodable {
($index_type:ty, $len:expr ) => (
impl Decodable for [T; $len] where T: Decodable {
- #[allow(len_zero)]
fn decode(decoder: &D) -> Result where D: Decoder {
let decoders = decoder.as_rlp();
diff --git a/util/src/uint.rs b/util/src/uint.rs
index b3427f6bc..912088fb9 100644
--- a/util/src/uint.rs
+++ b/util/src/uint.rs
@@ -78,9 +78,6 @@ macro_rules! panic_on_overflow {
/// Large, fixed-length unsigned integer type.
pub trait Uint: Sized + Default + FromStr + From + FromJson + fmt::Debug + fmt::Display + PartialOrd + Ord + PartialEq + Eq + Hash {
- /// Size of this type.
- const SIZE: usize;
-
/// Returns new instance equalling zero.
fn zero() -> Self;
/// Returns new instance equalling one.
@@ -148,8 +145,6 @@ macro_rules! construct_uint {
pub struct $name(pub [u64; $n_words]);
impl Uint for $name {
- const SIZE: usize = $n_words * 8;
-
type FromDecStrErr = FromHexError;
/// TODO: optimize, throw appropriate err
@@ -634,66 +629,6 @@ macro_rules! construct_uint {
// TODO: optimise and traitify.
- impl<'a> AddAssign<&'a $name> for $name {
- fn add_assign(&mut self, other: &'a Self) {
- *self = self.add(*other);
- }
- }
-
- impl<'a> SubAssign<&'a $name> for $name {
- fn sub_assign(&mut self, other: &'a Self) {
- *self = self.sub(*other);
- }
- }
-
- impl<'a> MulAssign<&'a $name> for $name {
- fn mul_assign(&mut self, other: &'a Self) {
- *self = self.mul(*other);
- }
- }
-
- impl<'a> DivAssign<&'a $name> for $name {
- fn div_assign(&mut self, other: &'a Self) {
- *self = self.div(*other);
- }
- }
-
- impl<'a> RemAssign<&'a $name> for $name {
- fn rem_assign(&mut self, other: &'a Self) {
- *self = self.rem(*other);
- }
- }
-
- impl AddAssign<$name> for $name {
- fn add_assign(&mut self, other: Self) {
- *self = self.add(other);
- }
- }
-
- impl SubAssign<$name> for $name {
- fn sub_assign(&mut self, other: Self) {
- *self = self.sub(other);
- }
- }
-
- impl MulAssign<$name> for $name {
- fn mul_assign(&mut self, other: Self) {
- *self = self.mul(other);
- }
- }
-
- impl DivAssign<$name> for $name {
- fn div_assign(&mut self, other: Self) {
- *self = self.div(other);
- }
- }
-
- impl RemAssign<$name> for $name {
- fn rem_assign(&mut self, other: Self) {
- *self = self.rem(other);
- }
- }
-
impl BitAnd<$name> for $name {
type Output = $name;
@@ -964,37 +899,6 @@ mod tests {
use uint::{Uint, U128, U256, U512};
use std::str::FromStr;
- #[test]
- pub fn assign_ops() {
- let x: U256 = x!(69);
- let y: U256 = x!(42);
- {
- let mut z = x;
- z += y;
- assert_eq!(z, x + y);
- }
- {
- let mut z = x;
- z -= y;
- assert_eq!(z, x - y);
- }
- {
- let mut z = x;
- z *= y;
- assert_eq!(z, x * y);
- }
- {
- let mut z = x;
- z /= y;
- assert_eq!(z, x / y);
- }
- {
- let mut z = x;
- z %= y;
- assert_eq!(z, x % y);
- }
- }
-
#[test]
pub fn uint256_from() {
let e = U256([10, 0, 0, 0]);