mirror of
https://github.com/mbilker/kbinxml-rs.git
synced 2026-04-25 15:42:45 -05:00
cargo: version 2.1.1
- Upgraded dependencies
This commit is contained in:
parent
1b4de54752
commit
1aa7fe1ce6
|
|
@ -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"
|
||||
|
|
|
|||
|
|
@ -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]);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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"
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user