Rust로 가능한 여러 값으로 JSON 역 직렬화

Pasteta

그래서 저는 Rust로 프로그램을 작성하고 있습니다. 이것은 json 구성 파일을 읽고 입력에 따라 몇 가지 작업을 수행합니다. serde_json을 사용하여 json을 성공적으로 구문 분석했습니다 . 다음으로 사용자에게 허용하고 싶은 것은 몇 가지 고급 옵션을 지정할 수 있지만 입력을 구문 분석하는 방법을 모르겠습니다. 기본 json은 다음과 같습니다.

{
  value: true
}

이것을 파싱하는 것은 다음과 같은 구조체로 간단합니다.

#[derive(Deserialize)]
pub struct Config {
  value: bool
}

어떻게 입력 할 수 있도록 사용자에 대한 옵션을 추가하는 방법에 대한 갈 것 중 하나 bool또는 object같은 :

{
  value: {
    avanced_value: true
  }
}

나는 enum이와 같은 사용을 시도했지만 bool열거 형 내에서 사용할 수없는 것 같습니다 .

#[derive(Deserialize)]
pub struct Config {
  value: ValueEnum
}

#[derive(Deserialize)]
pub enum ValueEnum {
  bool,
  Config(ValueConfig),
}

#[derive(Deserialize)]
pub struct ValueConfig {
  advanced_value: bool
}

분명한 것이 누락되었거나 입력 json을 재구성해야합니까? 미리 Tnx.

Uanirudhx

열거 형 변형으로 bool을 래핑하지 않았습니다 (ValueConfig에서했던 것처럼). 또한 기본적으로 serde 태그 열거 형은 아마도 원하는 것이 아닐 것입니다. 태그가 지정되지 않은 열거 형을 사용하려고합니다.

#[derive(Deserialize)]
pub struct Config {
  value: ValueEnum
}

#[derive(Deserialize)]
#[serde(untagged)]
pub enum ValueEnum {
  Bool(bool),
  Config(ValueConfig),
}

#[derive(Deserialize)]
pub struct ValueConfig {
  advanced_value: bool
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

하나의 클래스에서 가능한 여러 개체 이름으로 JSON 문자열 역 직렬화

분류에서Dev

여러 가능한 형식으로 속성을 읽기위한 사용자 지정 JSON 직렬화 / 역 직렬화

분류에서Dev

변경 가능한 키로 json 역 직렬화

분류에서Dev

변경 가능한 키로 json 역 직렬화

분류에서Dev

RestSharp로 JSON 역 직렬화

분류에서Dev

.NET DataContractJsonSerializer serializer를 사용하여 사전으로 JSON 직렬화 / 역 직렬화

분류에서Dev

.NET DataContractJsonSerializer serializer를 사용하여 사전으로 JSON 직렬화 / 역 직렬화

분류에서Dev

json.net으로 JSON 역 직렬화

분류에서Dev

여러 개체로 ArrayList 역 직렬화

분류에서Dev

Newtonsoft.Json을 사용하여 이름을 값으로 역 직렬화

분류에서Dev

JSON.NET으로 이상한 구조의 JSON 역 직렬화

분류에서Dev

JSON 역 직렬화-값으로 필요한 중첩 목록 및 키

분류에서Dev

여러 DataTable을 JSON으로 직렬화

분류에서Dev

JSON.net을 사용하여 동적으로 역 직렬화

분류에서Dev

C #으로 json 역 직렬화

분류에서Dev

Gson으로 JSON 역 직렬화

분류에서Dev

Newtonsoft.Json으로 역 직렬화

분류에서Dev

가변 콘텐츠로 C #을 사용하여 Json 역 직렬화

분류에서Dev

Newtosoft Json을 사용하여 Json을 null로 역 직렬화

분류에서Dev

URL에서 C #의 List <T>로 여러 Json 개체 역 직렬화

분류에서Dev

배열의 null 값으로 JSON 역 직렬화

분류에서Dev

JSON을 C #으로 역 직렬화-확인란의 값

분류에서Dev

DynamicJsonArray가있는 복잡한 JSON 개체를 동적으로 역 직렬화

분류에서Dev

유형 식별자로 숫자 값으로 serde를 사용하여 json의 역 직렬화

분류에서Dev

Jackson을 사용하여 JAVA 클래스를 대상으로하는 JSON 직렬화 및 역 직렬화

분류에서Dev

C #을 사용하여 클래스로 JSON 역 직렬화

분류에서Dev

Newtonsoft.JSON을 사용하여 C #으로 Json 문자열 역 직렬화

분류에서Dev

JSON은 List <T>로 역 직렬화

분류에서Dev

Collection + JSON 객체로 역 직렬화

Related 관련 기사

  1. 1

    하나의 클래스에서 가능한 여러 개체 이름으로 JSON 문자열 역 직렬화

  2. 2

    여러 가능한 형식으로 속성을 읽기위한 사용자 지정 JSON 직렬화 / 역 직렬화

  3. 3

    변경 가능한 키로 json 역 직렬화

  4. 4

    변경 가능한 키로 json 역 직렬화

  5. 5

    RestSharp로 JSON 역 직렬화

  6. 6

    .NET DataContractJsonSerializer serializer를 사용하여 사전으로 JSON 직렬화 / 역 직렬화

  7. 7

    .NET DataContractJsonSerializer serializer를 사용하여 사전으로 JSON 직렬화 / 역 직렬화

  8. 8

    json.net으로 JSON 역 직렬화

  9. 9

    여러 개체로 ArrayList 역 직렬화

  10. 10

    Newtonsoft.Json을 사용하여 이름을 값으로 역 직렬화

  11. 11

    JSON.NET으로 이상한 구조의 JSON 역 직렬화

  12. 12

    JSON 역 직렬화-값으로 필요한 중첩 목록 및 키

  13. 13

    여러 DataTable을 JSON으로 직렬화

  14. 14

    JSON.net을 사용하여 동적으로 역 직렬화

  15. 15

    C #으로 json 역 직렬화

  16. 16

    Gson으로 JSON 역 직렬화

  17. 17

    Newtonsoft.Json으로 역 직렬화

  18. 18

    가변 콘텐츠로 C #을 사용하여 Json 역 직렬화

  19. 19

    Newtosoft Json을 사용하여 Json을 null로 역 직렬화

  20. 20

    URL에서 C #의 List <T>로 여러 Json 개체 역 직렬화

  21. 21

    배열의 null 값으로 JSON 역 직렬화

  22. 22

    JSON을 C #으로 역 직렬화-확인란의 값

  23. 23

    DynamicJsonArray가있는 복잡한 JSON 개체를 동적으로 역 직렬화

  24. 24

    유형 식별자로 숫자 값으로 serde를 사용하여 json의 역 직렬화

  25. 25

    Jackson을 사용하여 JAVA 클래스를 대상으로하는 JSON 직렬화 및 역 직렬화

  26. 26

    C #을 사용하여 클래스로 JSON 역 직렬화

  27. 27

    Newtonsoft.JSON을 사용하여 C #으로 Json 문자열 역 직렬화

  28. 28

    JSON은 List <T>로 역 직렬화

  29. 29

    Collection + JSON 객체로 역 직렬화

뜨겁다태그

보관