Run Code  | API  | Code Wall  | Misc  | Feedback  | Login  | Theme  | Privacy  | Patreon 

Visitor design pattern for class introspection and serialization.

Language: Layout:
+ ] Compiler args + ] Show input
Compilation time: 0.97 sec, absolute running time: 0.5 sec, cpu time: 0.4 sec, memory peak: 5 Mb, absolute service time: 1,48 sec 
edit mode |  history
Error(s):
 [LOG] N = 7
===== EXPERIMENT 1 ===========
Class name = AClass
 Field { name = n ; type = int  ; value = 200 }
 Field { name = k ; type = double  ; value = -2.34 }
 Field { name = x ; type = long  ; value = 900 }
 Field { name = name ; type = std::string  ; value = objectA }

===== EXPERIMENT 2 ===========
Class name = AClass
 Field { name = n ; type = int  ; value = 200 }
 Field { name = k ; type = double  ; value = -2.34 }
 Field { name = x ; type = long  ; value = 900 }
 Field { name = name ; type = std::string  ; value = objectA }

===== EXPERIMENT 3 - Text Serialization/Deserialization ===
Class name = AClass
 Field { name = n ; type = int  ; value = 200 }
 Field { name = k ; type = double  ; value = -2.34 }
 Field { name = x ; type = long  ; value = 900 }
 Field { name = name ; type = std::string  ; value = objectA }
 ==> pseudoFile = 200 -2.34 900 objectA 

===== EXPERIMENT 5 == Serialize to file ===========
Stream = \xc8\x00\x00\x00\xb8\x1e\x85\xebQ \xb8\x02\xc0\x84\x03\x00\x00\x00\x00\x00\x00\x07\x00\x00\x00\x00\x00\x00\x00o b j e c t A 

===== EXPERIMENT 6 == Deserialize from file ===========
Class name = AClass
 Field { name = n ; type = int  ; value = 200 }
 Field { name = k ; type = double  ; value = -2.34 }
 Field { name = x ; type = long  ; value = 900 }
 Field { name = name ; type = std::string  ; value = objectA }

    
                
λ
.NET NoSQL database for rapid development