Skip to content

Commit 9e0642e

Browse files
committed
switch to bincode 2
switch to node --experimental-strip-types
1 parent d24a9f4 commit 9e0642e

15 files changed

Lines changed: 349 additions & 435 deletions

File tree

Cargo.lock

Lines changed: 39 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

serde-generate/runtime/typescript/bincode.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,12 @@
1-
import { BinaryReader, BinaryWriter } from "./serde";
1+
import { BinaryReader, BinaryWriter } from "./serde.ts";
22

33
export class BincodeReader extends BinaryReader {
44
read_length() {
55
return Number(this.read_u64())
66
}
7-
87
public read_variant_index() {
98
return this.read_u32()
109
}
11-
1210
check_that_key_slices_are_increasing(key1: [number, number], key2: [number, number]) {
1311
return
1412
}
@@ -18,11 +16,9 @@ export class BincodeWriter extends BinaryWriter {
1816
write_length(value: number) {
1917
this.write_u64(value)
2018
}
21-
2219
public write_variant_index(value: number) {
2320
this.write_u32(value)
2421
}
25-
2622
public sort_map_entries(offsets: number[]) {
2723
return
2824
}

serde-generate/src/typescript.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -81,10 +81,10 @@ impl<'a> CodeGenerator<'a> {
8181

8282
impl<'a, T: Write> TypeScriptEmitter<'a, T> {
8383
fn output_preamble(&mut self) -> Result<()> {
84-
writeln!(self.out, r#"import type * as $t from "./serde""#)?;
85-
writeln!(self.out, r#"import {{ BincodeReader, BincodeWriter }} from "./bincode""#)?;
84+
writeln!(self.out, r#"import type * as $t from "./serde.ts""#)?;
85+
writeln!(self.out, r#"import {{ BincodeReader, BincodeWriter }} from "./bincode.ts""#)?;
8686
for namespace in self.generator.namespaces_to_import.iter() {
87-
writeln!(self.out, "import * as {} from '../{}/mod';\n", namespace.to_camel_case(), namespace)?;
87+
writeln!(self.out, "import * as {} from '../{}/mod.ts';\n", namespace.to_camel_case(), namespace)?;
8888
}
8989
Ok(())
9090
}
@@ -132,13 +132,13 @@ impl<'a, T: Write> TypeScriptEmitter<'a, T> {
132132

133133
match container {
134134
ContainerFormat::UnitStruct => {
135-
writeln!(self.out, "const value: $t.unit = {}", self.quote_read_value(&Format::Unit))?;
135+
writeln!(self.out, "let value: $t.unit = {}", self.quote_read_value(&Format::Unit))?;
136136
}
137137
ContainerFormat::NewTypeStruct(inner) => {
138-
writeln!(self.out, "const value: {name} = {}", self.quote_read_value(inner))?;
138+
writeln!(self.out, "let value: {name} = {}", self.quote_read_value(inner))?;
139139
}
140140
ContainerFormat::TupleStruct(inner_types) => {
141-
writeln!(self.out, "const value: {name} = {{")?;
141+
writeln!(self.out, "let value: {name} = {{")?;
142142
self.out.indent();
143143
for (i, inner) in inner_types.iter().enumerate() {
144144
writeln!(self.out, "${i}: {},", self.quote_read_value(&inner))?;
@@ -147,7 +147,7 @@ impl<'a, T: Write> TypeScriptEmitter<'a, T> {
147147
writeln!(self.out, "}}")?;
148148
}
149149
ContainerFormat::Struct(fields) => {
150-
writeln!(self.out, "const value: {name} = {{")?;
150+
writeln!(self.out, "let value: {name} = {{")?;
151151
self.out.indent();
152152
for field in fields.iter() {
153153
writeln!(self.out, "{}: {},", field.name, self.quote_read_value(&field.value))?;
@@ -411,7 +411,7 @@ impl<'a, T: Write> TypeScriptEmitter<'a, T> {
411411
Seq(format) => {
412412
formatdoc!("
413413
writer.write_length({value}.length)
414-
for (const item of {value}) {{
414+
for (let item of {value}) {{
415415
{}
416416
}}",
417417
self.quote_write_value("item", format)
@@ -435,7 +435,7 @@ impl<'a, T: Write> TypeScriptEmitter<'a, T> {
435435
}
436436
TupleArray { content, .. } => {
437437
formatdoc!("
438-
for (const item of {value}) {{
438+
for (let item of {value}) {{
439439
{}
440440
}}",
441441
self.quote_write_value("item[0]", content)

suite/typescript/.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
node_modules
22
target
3-
.devenv
3+
.devenv
4+
.envrc

suite/typescript/Cargo.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ name = "generator"
88
path = "./rs/generator.rs"
99

1010
[dependencies]
11-
bincode = { version = "1.3.3", features = ["i128"] }
12-
serde = "1"
11+
bincode = { version = "2", features = ["serde"] }
12+
serde = { version = "1" }
1313
serde-generate = { path = "../../serde-generate" }
1414
serde-reflection = { path = "../../serde-reflection" }
15+
serde_json = { version = "1" }

0 commit comments

Comments
 (0)