cargo: version 2.1.1

- Upgraded dependencies
This commit is contained in:
Matt Bilker 2020-02-26 02:38:05 +00:00
parent 1b4de54752
commit 1aa7fe1ce6
No known key found for this signature in database
GPG Key ID: 69ADF8AEB6C8B5D1
3 changed files with 164 additions and 177 deletions

View File

@ -1,6 +1,6 @@
[package]
name = "kbinxml"
version = "2.1.0"
version = "2.1.1"
authors = ["Matt Bilker <me@mbilker.us>"]
description = "An encoder/decoder for Konami's binary XML format used in many of their games."
license = "MIT"

View File

@ -230,17 +230,17 @@ macro_rules! tuple {
impl Value {
tuple! {
S8_2, S8_3, S8_4, Vs8,
U8_2, U8_3, U8_4, Vu8,
Boolean2, Boolean3, Boolean4, Vb,
S16_2, S16_3, S16_4, Vs16,
S32_2, S32_3, S32_4,
S64_2, S64_3, S64_4,
U16_2, U16_3, U16_4, Vu16,
U32_2, U32_3, U32_4,
U64_2, U64_3, U64_4,
Float2, Float3, Float4,
Double2, Double3, Double4,
S8_2, S8_3, S8_4, Vs8,
U8_2, U8_3, U8_4, Vu8,
Boolean2, Boolean3, Boolean4, Vb,
S16_2, S16_3, S16_4, Vs16,
S32_2, S32_3, S32_4,
S64_2, S64_3, S64_4,
U16_2, U16_3, U16_4, Vu16,
U32_2, U32_3, U32_4,
U64_2, U64_3, U64_4,
Float2, Float3, Float4,
Double2, Double3, Double4,
}
pub fn to_bytes(&self) -> Result<Vec<u8>> {
@ -405,19 +405,6 @@ impl Value {
}
}
/*
impl TryFrom<Value> for Vec<Value> {
type Error = KbinError;
fn try_from(value: Value) -> Result<Self, Self::Error> {
match value {
Value::Array(values) => Ok(values),
value => Err(KbinError::ExpectedValueArray(value).into()),
}
}
}
*/
impl TryFrom<Value> for Vec<u8> {
type Error = KbinError;
@ -499,42 +486,42 @@ impl From<Vec<u8>> for Value {
impl fmt::Debug for Value {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
macro_rules! field {
(
display: [$($konst_display:ident),*],
debug: [$($konst_debug:ident),*]
) => {
match *self {
$(
Value::$konst_display(ref v) => write!(f, concat!(stringify!($konst_display), "({})"), v),
)*
$(
Value::$konst_debug(ref v) => write!(f, concat!(stringify!($konst_debug), "({:?})"), v),
)*
Value::Binary(ref v) => write!(f, "Binary(0x{:02x?})", v),
Value::Array(ref value) => if f.alternate() {
write!(f, "Array({:#?})", value)
} else {
write!(f, "Array({:?})", value)
},
(
display: [$($konst_display:ident),*],
debug: [$($konst_debug:ident),*]
) => {
match *self {
$(
Value::$konst_display(ref v) => write!(f, concat!(stringify!($konst_display), "({})"), v),
)*
$(
Value::$konst_debug(ref v) => write!(f, concat!(stringify!($konst_debug), "({:?})"), v),
)*
Value::Binary(ref v) => write!(f, "Binary(0x{:02x?})", v),
Value::Array(ref value) => if f.alternate() {
write!(f, "Array({:#?})", value)
} else {
write!(f, "Array({:?})", value)
},
}
};
}
};
}
field! {
display: [
S8, S16, S32, S64,
U8, U16, U32, U64,
Float, Double, Boolean
],
debug: [
String, Time, Ip4,
Attribute,
S8_2, U8_2, S16_2, U16_2, S32_2, U32_2, S64_2, U64_2, Float2, Double2, Boolean2,
S8_3, U8_3, S16_3, U16_3, S32_3, U32_3, S64_3, U64_3, Float3, Double3, Boolean3,
S8_4, U8_4, S16_4, U16_4, S32_4, U32_4, S64_4, U64_4, Float4, Double4, Boolean4,
Vs16, Vu16,
Vs8, Vu8, Vb
]
display: [
S8, S16, S32, S64,
U8, U16, U32, U64,
Float, Double, Boolean
],
debug: [
String, Time, Ip4,
Attribute,
S8_2, U8_2, S16_2, U16_2, S32_2, U32_2, S64_2, U64_2, Float2, Double2, Boolean2,
S8_3, U8_3, S16_3, U16_3, S32_3, U32_3, S64_3, U64_3, Float3, Double3, Boolean3,
S8_4, U8_4, S16_4, U16_4, S32_4, U32_4, S64_4, U64_4, Float4, Double4, Boolean4,
Vs16, Vu16,
Vs8, Vu8, Vb
]
}
}
}
@ -542,130 +529,130 @@ impl fmt::Debug for Value {
impl fmt::Display for Value {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
macro_rules! display_value {
(
simple: [$($simple:ident),*],
tuple: [$($tuple:ident),*],
value: [$($parent:ident => [$($child:ident),*]),*]
) => {
match self {
$(
Value::$simple(v) => fmt::Display::fmt(v, f),
)*
$(
Value::$tuple(values) => {
for (i, v) in values.iter().enumerate() {
if i > 0 {
f.write_str(" ")?;
(
simple: [$($simple:ident),*],
tuple: [$($tuple:ident),*],
value: [$($parent:ident => [$($child:ident),*]),*]
) => {
match self {
$(
Value::$simple(v) => fmt::Display::fmt(v, f),
)*
$(
Value::$tuple(values) => {
for (i, v) in values.iter().enumerate() {
if i > 0 {
f.write_str(" ")?;
}
fmt::Display::fmt(v, f)?;
}
Ok(())
},
)*
$(
$(
Value::$child(values) => {
for (i, v) in values.iter().enumerate() {
if i > 0 {
f.write_str(" ")?;
}
fmt::Display::fmt(&Value::$parent(*v), f)?;
}
Ok(())
},
)*
)*
Value::Binary(buf) => {
for n in buf {
write!(f, "{:02x}", n)?;
}
Ok(())
},
Value::Float(n) => write!(f, "{:.6}", n),
Value::Double(n) => write!(f, "{:.6}", n),
Value::Boolean(b) => match b {
true => f.write_str("1"),
false => f.write_str("0"),
},
}
fmt::Display::fmt(v, f)?;
}
Ok(())
},
)*
$(
$(
Value::$child(values) => {
for (i, v) in values.iter().enumerate() {
if i > 0 {
f.write_str(" ")?;
}
fmt::Display::fmt(&Value::$parent(*v), f)?;
}
Ok(())
},
)*
)*
Value::Binary(buf) => {
for n in buf {
write!(f, "{:02x}", n)?;
}
Ok(())
},
Value::Float(n) => write!(f, "{:.6}", n),
Value::Double(n) => write!(f, "{:.6}", n),
Value::Boolean(b) => match b {
true => f.write_str("1"),
false => f.write_str("0"),
},
};
}
};
}
display_value! {
simple: [
S8, U8, S16, U16, S32, U32, S64, U64,
String, Ip4, Time, Attribute,
Array
],
tuple: [
S8_2, U8_2, S16_2, U16_2, S32_2, U32_2, S64_2, U64_2,
S8_3, U8_3, S16_3, U16_3, S32_3, U32_3, S64_3, U64_3,
S8_4, U8_4, S16_4, U16_4, S32_4, U32_4, S64_4, U64_4,
Vs8, Vu8, Vs16, Vu16
],
value: [
Float => [Float2, Float3, Float4],
Double => [Double2, Double3, Double4],
Boolean => [Boolean2, Boolean3, Boolean4, Vb]
]
simple: [
S8, U8, S16, U16, S32, U32, S64, U64,
String, Ip4, Time, Attribute,
Array
],
tuple: [
S8_2, U8_2, S16_2, U16_2, S32_2, U32_2, S64_2, U64_2,
S8_3, U8_3, S16_3, U16_3, S32_3, U32_3, S64_3, U64_3,
S8_4, U8_4, S16_4, U16_4, S32_4, U32_4, S64_4, U64_4,
Vs8, Vu8, Vs16, Vu16
],
value: [
Float => [Float2, Float3, Float4],
Double => [Double2, Double3, Double4],
Boolean => [Boolean2, Boolean3, Boolean4, Vb]
]
}
}
}
construct_types! {
(S8, i8);
(U8, u8);
(S16, i16);
(U16, u16);
(S32, i32);
(U32, u32);
(S64, i64);
(U64, u64);
//(Binary, Vec<u8>);
(String, String);
(Ip4, Ipv4Addr);
//(Time, u32);
(Float, f32);
(Double, f64);
(S8_2, [i8; 2]);
(U8_2, [u8; 2]);
(S16_2, [i16; 2]);
(U16_2, [u16; 2]);
(S32_2, [i32; 2]);
(U32_2, [u32; 2]);
(S64_2, [i64; 2]);
(U64_2, [u64; 2]);
(Float2, [f32; 2]);
(Double2, [f64; 2]);
(S8_3, [i8; 3]);
(U8_3, [u8; 3]);
(S16_3, [i16; 3]);
(U16_3, [u16; 3]);
(S32_3, [i32; 3]);
(U32_3, [u32; 3]);
(S64_3, [i64; 3]);
(U64_3, [u64; 3]);
(Float3, [f32; 3]);
(Double3, [f64; 3]);
(S8_4, [i8; 4]);
(U8_4, [u8; 4]);
(S16_4, [i16; 4]);
(U16_4, [u16; 4]);
(S32_4, [i32; 4]);
(U32_4, [u32; 4]);
(S64_4, [i64; 4]);
(U64_4, [u64; 4]);
(Float4, [f32; 4]);
(Double4, [f64; 4]);
//(Attribute, String);
// no 47
(Vs8, [i8; 16]);
(Vu8, [u8; 16]);
(Vs16, [i16; 8]);
(Vu16, [u16; 8]);
(Boolean, bool);
(Boolean2, [bool; 2]);
(Boolean3, [bool; 3]);
(Boolean4, [bool; 4]);
(Vb, [bool; 16]);
(S8, i8);
(U8, u8);
(S16, i16);
(U16, u16);
(S32, i32);
(U32, u32);
(S64, i64);
(U64, u64);
//(Binary, Vec<u8>);
(String, String);
(Ip4, Ipv4Addr);
//(Time, u32);
(Float, f32);
(Double, f64);
(S8_2, [i8; 2]);
(U8_2, [u8; 2]);
(S16_2, [i16; 2]);
(U16_2, [u16; 2]);
(S32_2, [i32; 2]);
(U32_2, [u32; 2]);
(S64_2, [i64; 2]);
(U64_2, [u64; 2]);
(Float2, [f32; 2]);
(Double2, [f64; 2]);
(S8_3, [i8; 3]);
(U8_3, [u8; 3]);
(S16_3, [i16; 3]);
(U16_3, [u16; 3]);
(S32_3, [i32; 3]);
(U32_3, [u32; 3]);
(S64_3, [i64; 3]);
(U64_3, [u64; 3]);
(Float3, [f32; 3]);
(Double3, [f64; 3]);
(S8_4, [i8; 4]);
(U8_4, [u8; 4]);
(S16_4, [i16; 4]);
(U16_4, [u16; 4]);
(S32_4, [i32; 4]);
(U32_4, [u32; 4]);
(S64_4, [i64; 4]);
(U64_4, [u64; 4]);
(Float4, [f32; 4]);
(Double4, [f64; 4]);
//(Attribute, String);
// no 47
(Vs8, [i8; 16]);
(Vu8, [u8; 16]);
(Vs16, [i16; 8]);
(Vu16, [u16; 8]);
(Boolean, bool);
(Boolean2, [bool; 2]);
(Boolean3, [bool; 3]);
(Boolean4, [bool; 4]);
(Vb, [bool; 16]);
}

View File

@ -1,6 +1,6 @@
[package]
name = "kbinxml_cli"
version = "2.0.0"
version = "2.0.1"
authors = ["Matt Bilker <me@mbilker.us>"]
description = "An encoder/decoder for Konami's binary XML format used in many of their games."
license = "MIT"
@ -12,7 +12,7 @@ byteorder = "1.3.2"
clap = "2.32.0"
encoding_rs = "0.8.6"
kbinxml = { path = "../kbinxml" }
pretty_env_logger = "0.3.0"
pretty_env_logger = "0.4.0"
[[bin]]
name = "kbinxml"