mirror of
https://github.com/a2x/cs2-dumper.git
synced 2025-04-02 15:25:35 +08:00
Fix mismatched types in C# source gen
This commit is contained in:
parent
ea249e3595
commit
b244f7b292
@ -16,7 +16,11 @@ impl CodeWriter for InterfaceMap {
|
|||||||
false,
|
false,
|
||||||
|fmt| {
|
|fmt| {
|
||||||
for (name, value) in ifaces {
|
for (name, value) in ifaces {
|
||||||
writeln!(fmt, "public const nint {} = {:#X};", name, value)?;
|
if *value > i32::MAX as u64 {
|
||||||
|
writeln!(fmt, "public static readonly nint {} = unchecked((nint){:#X});", name, value)?;
|
||||||
|
} else {
|
||||||
|
writeln!(fmt, "public const nint {} = {:#X};", name, value)?;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
|
@ -41,7 +41,13 @@ impl CodeWriter for SchemaMap {
|
|||||||
.members
|
.members
|
||||||
.iter()
|
.iter()
|
||||||
.map(|member| {
|
.map(|member| {
|
||||||
format!("{} = {:#X}", member.name, member.value)
|
let hex = format!("{:#X}", member.value);
|
||||||
|
let cast = if member.value == -1 {
|
||||||
|
format!("unchecked(({})-1)", type_name)
|
||||||
|
} else {
|
||||||
|
format!("{}", hex)
|
||||||
|
};
|
||||||
|
format!("{} = {}", member.name, cast)
|
||||||
})
|
})
|
||||||
.collect::<Vec<_>>()
|
.collect::<Vec<_>>()
|
||||||
.join(",\n");
|
.join(",\n");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user