Skip to content

Commit c63c298

Browse files
authored
refactor: optimize serialization (#5)
1 parent b53d58e commit c63c298

File tree

8 files changed

+10
-42
lines changed

8 files changed

+10
-42
lines changed

rust-toolchain.toml

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[toolchain]
2+
profile = "default"
3+
channel = "nightly-2023-12-27"

src/api/fav/get_list.rs

+1-3
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,12 @@ use serde::{Deserialize, Serialize};
1010
use std::ops::ControlFlow;
1111

1212
#[derive(Clone, Debug, Serialize, Deserialize)]
13+
#[serde(rename_all = "PascalCase")]
1314
pub struct FavEntry {
14-
#[serde(rename = "Title")]
1515
pub title: String,
1616
#[serde(rename = "LinkUrl")]
1717
pub url: String,
18-
#[serde(rename = "Summary")]
1918
pub summary: String,
20-
#[serde(rename = "Tags")]
2119
pub tags: Vec<String>,
2220
#[serde(rename = "DateAdded")]
2321
pub create_time: String,

src/api/ing/get_comment_list.rs

+1-7
Original file line numberDiff line numberDiff line change
@@ -7,24 +7,18 @@ use anyhow::Result;
77
use serde::{Deserialize, Serialize};
88

99
#[derive(Clone, Debug, Serialize, Deserialize)]
10+
#[serde(rename_all = "PascalCase")]
1011
pub struct IngCommentEntry {
11-
#[serde(rename = "Id")]
1212
pub id: usize,
13-
#[serde(rename = "Content")]
1413
pub content: String,
1514
#[serde(rename = "DateAdded")]
1615
pub create_time: String,
17-
#[serde(rename = "StatusId")]
1816
pub status_id: usize,
19-
#[serde(rename = "UserAlias")]
2017
pub user_alias: String,
2118
#[serde(rename = "UserDisplayName")]
2219
pub user_name: String,
23-
#[serde(rename = "UserIconUrl")]
2420
pub user_icon_url: String,
25-
#[serde(rename = "UserId")]
2621
pub user_id: usize,
27-
#[serde(rename = "UserGuid")]
2822
pub user_guid: String,
2923
}
3024

src/api/ing/get_list.rs

+1-10
Original file line numberDiff line numberDiff line change
@@ -10,30 +10,21 @@ use serde::{Deserialize, Serialize};
1010
use std::ops::ControlFlow;
1111

1212
#[derive(Clone, Debug, Serialize, Deserialize)]
13+
#[serde(rename_all = "PascalCase")]
1314
pub struct IngEntry {
14-
#[serde(rename = "Id")]
1515
pub id: usize,
16-
#[serde(rename = "Content")]
1716
pub content: String,
18-
#[serde(rename = "IsPrivate")]
1917
pub is_private: bool,
20-
#[serde(rename = "IsLucky")]
2118
pub is_lucky: bool,
22-
#[serde(rename = "CommentCount")]
2319
pub comment_count: usize,
2420
#[serde(rename = "DateAdded")]
2521
pub create_time: String,
26-
#[serde(rename = "UserAlias")]
2722
pub user_alias: String,
2823
#[serde(rename = "UserDisplayName")]
2924
pub user_name: String,
30-
#[serde(rename = "UserIconUrl")]
3125
pub user_icon_url: String,
32-
#[serde(rename = "UserId")]
3326
pub user_id: usize,
34-
#[serde(rename = "UserGuid")]
3527
pub user_guid: String,
36-
#[serde(rename = "SendFrom")]
3728
pub send_from: IngSendFrom,
3829
#[serde(rename = "Icons")]
3930
pub icons: String,

src/api/news/get_list.rs

+1-7
Original file line numberDiff line numberDiff line change
@@ -8,22 +8,16 @@ use anyhow::Result;
88
use serde::{Deserialize, Serialize};
99

1010
#[derive(Clone, Debug, Serialize, Deserialize)]
11+
#[serde(rename_all = "PascalCase")]
1112
pub struct NewsEntry {
12-
#[serde(rename = "Id")]
1313
pub id: usize,
14-
#[serde(rename = "Title")]
1514
pub title: String,
16-
#[serde(rename = "Summary")]
1715
pub summary: String,
18-
#[serde(rename = "TopicId")]
1916
pub topic_id: usize,
2017
#[serde(rename = "TopicIcon")]
2118
pub topic_icon_url: Option<String>,
22-
#[serde(rename = "ViewCount")]
2319
pub view_count: usize,
24-
#[serde(rename = "CommentCount")]
2520
pub comment_count: usize,
26-
#[serde(rename = "DiggCount")]
2721
pub digg_count: usize,
2822
#[serde(rename = "DateAdded")]
2923
pub create_time: String,

src/api/post/get_comment_list.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ use anyhow::Result;
88
use serde::{Deserialize, Serialize};
99

1010
#[derive(Clone, Debug, Serialize, Deserialize)]
11+
#[serde(rename_all = "PascalCase")]
1112
pub struct PostCommentEntry {
12-
#[serde(rename = "Id")]
1313
pub id: usize,
1414
#[serde(rename = "Body")]
1515
pub content: String,
@@ -19,7 +19,6 @@ pub struct PostCommentEntry {
1919
pub user_home_url: String,
2020
#[serde(rename = "FaceUrl")]
2121
pub avatar_url: String,
22-
#[serde(rename = "Floor")]
2322
pub floor: usize,
2423
#[serde(rename = "DateAdded")]
2524
pub create_time: String,

src/api/post/get_one.rs

+1-3
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ use serde_json::Value;
99

1010
// TODO: not elegant
1111
#[derive(Serialize, Deserialize, Debug)]
12+
#[serde(rename_all = "camelCase")]
1213
pub struct PostEntry {
1314
pub id: usize,
1415
pub title: String,
@@ -19,11 +20,8 @@ pub struct PostEntry {
1920
#[serde(rename = "dateUpdated")]
2021
pub modify_time: String,
2122

22-
#[serde(rename = "isDraft")]
2323
pub is_draft: bool,
24-
#[serde(rename = "isPinned")]
2524
pub is_pinned: bool,
26-
#[serde(rename = "isPublished")]
2725
pub is_published: bool,
2826

2927
// WRN:

src/api/user/info.rs

+1-10
Original file line numberDiff line numberDiff line change
@@ -7,30 +7,21 @@ use anyhow::Result;
77
use serde::{Deserialize, Serialize};
88

99
#[derive(Serialize, Deserialize, Debug, Clone)]
10+
#[serde(rename_all = "PascalCase")]
1011
pub struct UserInfo {
11-
#[serde(rename = "UserId")]
1212
pub user_id: String,
1313
#[serde(rename = "SpaceUserID")]
1414
pub space_user_id: usize,
15-
#[serde(rename = "BlogId")]
1615
pub blog_id: usize,
17-
#[serde(rename = "DisplayName")]
1816
pub display_name: String,
19-
#[serde(rename = "Face")]
2017
pub face: String,
21-
#[serde(rename = "Avatar")]
2218
pub avatar: String,
23-
#[serde(rename = "Seniority")]
2419
pub seniority: String,
25-
#[serde(rename = "BlogApp")]
2620
pub blog_app: String,
27-
#[serde(rename = "FollowingCount")]
2821
pub following_count: usize,
2922
#[serde(rename = "FollowerCount")]
3023
pub followers_count: usize,
31-
#[serde(rename = "IsVip")]
3224
pub is_vip: bool,
33-
#[serde(rename = "Joined")]
3425
pub joined: String,
3526
}
3627

0 commit comments

Comments
 (0)