mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			85 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Forth
		
	
	
	
	
	
			
		
		
	
	
			85 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Forth
		
	
	
	
	
	
| namespace Nessos.FsPickler.Json
 | |
| 
 | |
|     open System
 | |
| 
 | |
|     open Nessos.FsPickler
 | |
| 
 | |
|     type internal OAttribute = System.Runtime.InteropServices.OptionalAttribute
 | |
|     type internal DAttribute = System.Runtime.InteropServices.DefaultParameterValueAttribute
 | |
| 
 | |
|     /// <summary>
 | |
|     ///     Json pickler instance.
 | |
|     /// </summary>
 | |
|     type JsonSerializer =
 | |
|         inherit FsPicklerTextSerializer
 | |
|         
 | |
|         val private format : JsonPickleFormatProvider
 | |
| 
 | |
|         /// <summary>
 | |
|         ///     Initializes a new Json pickler instance.
 | |
|         /// </summary>
 | |
|         /// <param name="indent">indent out Json pickles.</param>
 | |
|         /// <param name="omitHeader">omit FsPickler header in Json pickles.</param>
 | |
|         /// <param name="typeConverter">specify a custom type name converter.</param>
 | |
|         new ([<O;D(null)>] ?indent, [<O;D(null)>] ?omitHeader, [<O;D(null)>] ?typeConverter) =
 | |
|             let indent = defaultArg indent false
 | |
|             let omitHeader = defaultArg omitHeader false
 | |
|             let json = new JsonPickleFormatProvider(indent, omitHeader)
 | |
|             { 
 | |
|                 inherit FsPicklerTextSerializer(json, ?typeConverter = typeConverter)
 | |
|                 format = json    
 | |
|             }
 | |
| 
 | |
|         /// <summary>
 | |
|         ///     Gets or sets whether Json output should be indented.
 | |
|         /// </summary>
 | |
|         member x.Indent
 | |
|             with get () = x.format.Indent
 | |
|             and set b = x.format.Indent <- b
 | |
| 
 | |
|         /// <summary>
 | |
|         ///     Gets or sets whether FsPickler headers should be ignored in pickle format.
 | |
|         /// </summary>
 | |
|         member x.OmitHeader
 | |
|             with get () = x.format.OmitHeader
 | |
|             and set b = x.format.OmitHeader <- b
 | |
| 
 | |
|         /// <summary>
 | |
|         ///     Gets or sets a non-null whitespace string that serves as a custom, top-level sequence separator.
 | |
|         /// </summary>
 | |
|         member x.SequenceSeparator
 | |
|             with get () = x.format.SequenceSeparator
 | |
|             and set sep = x.format.SequenceSeparator <- sep
 | |
| 
 | |
|         /// <summary>
 | |
|         ///     Gets or sets whether top-level sequences should be serialized using the custom separator.
 | |
|         /// </summary>
 | |
|         member x.UseCustomTopLevelSequenceSeparator
 | |
|             with get () = x.format.UseCustomTopLevelSequenceSeparator
 | |
|             and set e = x.format.UseCustomTopLevelSequenceSeparator <- e
 | |
| 
 | |
|     /// <summary>
 | |
|     ///     BSON pickler instance.
 | |
|     /// </summary>
 | |
|     type BsonSerializer([<O;D(null)>] ?typeConverter) =
 | |
|         inherit FsPicklerSerializer(new BsonPickleFormatProvider(), ?typeConverter = typeConverter)
 | |
| 
 | |
| 
 | |
|     /// FsPickler static methods.
 | |
|     type FsPickler =
 | |
| 
 | |
|         /// <summary>
 | |
|         ///     Initializes a new Json pickler instance.
 | |
|         /// </summary>
 | |
|         /// <param name="indent">indent out Json pickles.</param>
 | |
|         /// <param name="omitHeader">omit FsPickler header in Json pickles.</param>
 | |
|         /// <param name="typeConverter">specify a custom type name converter.</param>
 | |
|         static member CreateJson([<O;D(null)>] ?indent, [<O;D(null)>] ?omitHeader, [<O;D(null)>] ?typeConverter) = 
 | |
|             new JsonSerializer(?indent = indent, ?omitHeader = omitHeader, ?typeConverter = typeConverter)
 | |
| 
 | |
|         /// <summary>
 | |
|         ///     Initializes a new Bson pickler instance.
 | |
|         /// </summary>
 | |
|         /// <param name="typeConverter">specify a custom type name converter.</param>
 | |
|         static member CreateBson([<O;D(null)>] ?typeConverter) = 
 | |
|             new BsonSerializer(?typeConverter = typeConverter) |