Sexplib의 구문 확장은 OCaml에서 임의의 사용자 정의 데이터 구조의 직렬화 및 비 직렬화를 쉽게 만듭니다. 그것은 일반적으로 유형 정의의 마지막에 with sexp
주석을 추가하면된다 :Map과 같은 functor 유형에 sexplib을 어떻게 사용할 수 있습니까?
type a = A of int | B of float with sexp
이 펑 기반 유형에 직접 일반화하는 것 같지 않으며,이 Sexplib 표준 타입 컨버터도 캡처 할 수있는 방법을 명확 표준 펑터
지금까지 일련 번호 지정 전에 목록에 특정 Map 유형 인스턴스 (예 : int Map.Make(String).t
)를 병합하여이 문제를 해결했지만, 분명히 일반적으로 야심적 인 Sexplib/Jane의 저자가 간과하지 않았습니다. 스트리트 코어. 또한 버전의 배터리가 [Bat] Map과 같은 주요 모듈에 맞춤식 sexp 직렬화를 통해 믹스되지만이 기능은 잠시 동안 삭제되었습니다.
지도 또는 기타 복잡한 펑터 유형은 일반적으로 Sexplib 직렬화에 사용됩니까?
나는 퍼베이시브 섹스 플립 변환 함수가있는 확장 된 표준 라이브러리를 사용할 것이라고 생각합니다. '코어'를 보셨습니까? 나는 5 분만 보냈지 만,이 5 분 동안 펑터'Set.Make'를 적용했고, 결과 집합 타입에 대한 섹스 플립 변환 함수를 만들 수 있도록 인수 타입에 대한 섹스 플립 변환 함수를 요청했습니다. –