Fix a bunch of build errors.

This commit is contained in:
2019-10-24 08:46:42 -07:00
parent 620048bce6
commit 0dec5815dc
5 changed files with 80 additions and 74 deletions

View File

@@ -34,7 +34,7 @@ declareConversions bitsize =
i128_prims = generateI128Primitives sname
in [sourceFile|
use core::convert::{From,TryFrom};
use core::num::TryFromIntError;
use crate::CryptoNum;
#[cfg(test)]
use quickcheck::quickcheck;
use super::$$sname;
@@ -57,9 +57,9 @@ generateU128Primitives :: Ident -> Word -> [Item Span]
generateU128Primitives sname entries = [
[item|impl From<u128> for $$sname {
fn from(x: u128) -> Self {
let mut res = $$sname::zero;
res[0] = x as u64;
res[1] = (x >> 64) as u64;
let mut res = $$sname::zero();
res.value[0] = x as u64;
res.value[1] = (x >> 64) as u64;
res
}
}|]
@@ -67,17 +67,17 @@ generateU128Primitives sname entries = [
type Error = ConversionError;
fn try_from(x: $$sname) -> Result<u128,ConversionError> {
let mut goodConversion = true;
let mut res = 0;
let mut good_conversion = true;
let mut res;
res = (x.values[1] as u128) << 64;
res |= x.values[0] as u128;
res = (x.value[1] as u128) << 64;
res |= x.value[0] as u128;
$@{testZeros}
if goodConversion {
if good_conversion {
Ok(res)
} else {
Err(ConversionError::Overflow);
Err(ConversionError::Overflow)
}
}
}|]
@@ -85,17 +85,17 @@ generateU128Primitives sname entries = [
type Error = ConversionError;
fn try_from(x: &$$sname) -> Result<u128,ConversionError> {
let mut goodConversion = true;
let mut res = 0;
let mut good_conversion = true;
let mut res;
res = (x.values[1] as u128) << 64;
res |= x.values[0] as u128;
res = (x.value[1] as u128) << 64;
res |= x.value[0] as u128;
$@{testZeros}
if goodConversion {
if good_conversion {
Ok(res)
} else {
Err(ConversionError::Overflow());
Err(ConversionError::Overflow)
}
}
}|]
@@ -103,14 +103,14 @@ generateU128Primitives sname entries = [
where
testZeros = map (zeroTest . toLit) [2..entries-1]
zeroTest i =
[stmt| goodConversion &= x.values[$$(i)] == 0; |]
[stmt| good_conversion &= x.value[$$(i)] == 0; |]
buildPrimitives :: Ident -> Ident -> Word -> [Item Span]
buildPrimitives sname tname entries = [
[item|impl From<$$tname> for $$sname {
fn from(x: $$tname) -> Self {
let mut res = $$sname::zero();
res.values[0] = x as u64;
res.value[0] = x as u64;
res
}
}|]
@@ -118,13 +118,11 @@ buildPrimitives sname tname entries = [
type Error = ConversionError;
fn try_from(x: $$sname) -> Result<Self,ConversionError> {
let mut goodConversion = true;
let mut res = 0;
res = x.values[0] as $$tname;
let mut good_conversion = true;
let res = x.value[0] as $$tname;
$@{testZeros}
if goodConversion {
if good_conversion {
Ok(res)
} else {
Err(ConversionError::Overflow)
@@ -135,13 +133,11 @@ buildPrimitives sname tname entries = [
type Error = ConversionError;
fn try_from(x: &$$sname) -> Result<Self,ConversionError> {
let mut goodConversion = true;
let mut res = 0;
res = x.values[0] as $$tname;
let mut good_conversion = true;
let res = x.value[0] as $$tname;
$@{testZeros}
if goodConversion {
if good_conversion {
Ok(res)
} else {
Err(ConversionError::Overflow)
@@ -152,7 +148,7 @@ buildPrimitives sname tname entries = [
where
testZeros = map (zeroTest . toLit) [1..entries-1]
zeroTest i =
[stmt| goodConversion &= x.values[$$(i)] == 0; |]
[stmt| good_conversion &= x.value[$$(i)] == 0; |]
generateSignedPrims :: Ident -> Ident -> Ident -> [Item Span]
generateSignedPrims sname unsigned signed = [
@@ -161,7 +157,7 @@ generateSignedPrims sname unsigned signed = [
fn try_from(x: $$signed) -> Result<Self,ConversionError> {
let mut res = $$sname::zero();
res.values[0] = x as u64;
res.value[0] = x as u64;
if x < 0 {
Err(ConversionError::NegativeToUnsigned)
} else {
@@ -173,7 +169,7 @@ generateSignedPrims sname unsigned signed = [
type Error = ConversionError;
fn try_from(x: $$sname) -> Result<Self,ConversionError> {
let uns = $$unsigned::from(x)?;
let uns = $$unsigned::try_from(x)?;
Ok($$signed::try_from(uns)?)
}
}|]
@@ -181,7 +177,7 @@ generateSignedPrims sname unsigned signed = [
type Error = ConversionError;
fn try_from(x: &$$sname) -> Result<Self,ConversionError> {
let uns = $$unsigned::from(x)?;
let uns = $$unsigned::try_from(x)?;
Ok($$signed::try_from(uns)?)
}
}|]
@@ -194,8 +190,8 @@ generateI128Primitives sname = [
fn try_from(x: i128) -> Result<Self,ConversionError> {
let mut res = $$sname::zero();
res.values[0] = x as u64;
res.values[1] = ((x as u128) >> 64) as u64;
res.value[0] = x as u64;
res.value[1] = ((x as u128) >> 64) as u64;
if x < 0 {
Err(ConversionError::NegativeToUnsigned)
} else {
@@ -207,7 +203,7 @@ generateI128Primitives sname = [
type Error = ConversionError;
fn try_from(x: $$sname) -> Result<Self,ConversionError> {
let uns = u128::from(x)?;
let uns = u128::try_from(x)?;
Ok(i128::try_from(uns)?)
}
}|]
@@ -215,7 +211,7 @@ generateI128Primitives sname = [
type Error = ConversionError;
fn try_from(x: &$$sname) -> Result<Self,ConversionError> {
let uns = u128::from(x)?;
let uns = u128::try_from(x)?;
Ok(i128::try_from(uns)?)
}
}|]