bin/net8.0/PSDataRepository.Formatters.xml
|
<?xml version="1.0"?> <doc> <assembly> <name>PSDataRepository.Formatters</name> </assembly> <members> <member name="T:PSDataRepository.Formatters.FormatterHelper"> <summary> Shared helpers for formatter plugins: cycle detection, object cleaning, type checks. All formatters reference this library to reuse common serialization infrastructure. </summary> </member> <member name="F:PSDataRepository.Formatters.FormatterHelper.DefaultMaxDepth"> <summary> The default maximum depth if not otherwise specified. </summary> </member> <member name="F:PSDataRepository.Formatters.FormatterHelper.TypeNameKey"> <summary> Internal special key for storing the real .NET type name in a dictionary for XML element naming. </summary> </member> <member name="F:PSDataRepository.Formatters.FormatterHelper.JsonOptions"> <summary> JSON serializer options (indented, ignoring null). </summary> </member> <member name="F:PSDataRepository.Formatters.FormatterHelper.ReferenceEqualityComparerInstance"> <summary> Reference equality comparer for cycle detection in object graphs. Uses the built-in <see cref="T:System.Collections.Generic.ReferenceEqualityComparer"/> on .NET 5+. </summary> </member> <member name="M:PSDataRepository.Formatters.FormatterHelper.IsPrimitiveOrString(System.Object)"> <summary> Checks if the given object is a primitive/string/enum/decimal/datetime, etc. </summary> </member> <member name="M:PSDataRepository.Formatters.FormatterHelper.IsSerializableType(System.Type)"> <summary> Checks if a Type can be safely serialized. Returns false for types that cannot be serialized (IntPtr, SafeHandle, Delegate, etc.). </summary> </member> <member name="M:PSDataRepository.Formatters.FormatterHelper.CleanObjectForJson(System.Object,System.Int32,System.Int32,System.Collections.Generic.HashSet{System.Object})"> <summary> Recursively cleans an object for JSON/YAML serialization. Removes cycles, limits depth, ignores PS* props. </summary> </member> <member name="M:PSDataRepository.Formatters.FormatterHelper.CleanObjectForXml(System.Object,System.Int32,System.Int32,System.Collections.Generic.HashSet{System.Object})"> <summary> Recursively cleans an object for XML serialization with __PSDR_TypeName for element naming. </summary> </member> <member name="M:PSDataRepository.Formatters.FormatterHelper.InferXmlRootName(System.Object)"> <summary> Infers an intelligent XML root element name based on object type. </summary> </member> <member name="M:PSDataRepository.Formatters.FormatterHelper.GetSimpleTypeName(System.Object)"> <summary> Gets a simple, clean type name from an object. </summary> </member> <member name="T:PSDataRepository.Formatters.FormatterOptions"> <summary> Options passed to formatter Serialize/Deserialize methods. Formatters use only the options relevant to them and ignore the rest. </summary> </member> <member name="P:PSDataRepository.Formatters.FormatterOptions.MaxDepth"> <summary> Maximum recursion depth for serialization (default 10). </summary> </member> <member name="P:PSDataRepository.Formatters.FormatterOptions.CsvDelimiter"> <summary> CSV column delimiter (default ','). </summary> </member> <member name="P:PSDataRepository.Formatters.FormatterOptions.XmlRootName"> <summary> XML root element name. Null means auto-detect from object type. </summary> </member> <member name="T:PSDataRepository.Formatters.FormatterRegistry"> <summary> Default in-memory formatter registry. Thread-safe for concurrent reads after initial registration. </summary> </member> <member name="P:PSDataRepository.Formatters.FormatterRegistry.Instance"> <summary> Singleton instance shared across the module lifetime. </summary> </member> <member name="M:PSDataRepository.Formatters.FormatterRegistry.Register(PSDataRepository.Formatters.IFormatterDefinition)"> <inheritdoc /> </member> <member name="M:PSDataRepository.Formatters.FormatterRegistry.GetFormatter(System.String)"> <inheritdoc /> </member> <member name="M:PSDataRepository.Formatters.FormatterRegistry.GetAll"> <inheritdoc /> </member> <member name="M:PSDataRepository.Formatters.FormatterRegistry.GetFormatterNames"> <inheritdoc /> </member> <member name="M:PSDataRepository.Formatters.FormatterRegistry.DetectFromFileName(System.String)"> <inheritdoc /> </member> <member name="M:PSDataRepository.Formatters.FormatterRegistry.DetectFromContent(System.String)"> <inheritdoc /> </member> <member name="M:PSDataRepository.Formatters.FormatterRegistry.DetectFromNameAndContent(System.String,System.String)"> <inheritdoc /> </member> <member name="M:PSDataRepository.Formatters.FormatterRegistry.Clear"> <inheritdoc /> </member> <member name="T:PSDataRepository.Formatters.IFormatterDefinition"> <summary> Defines a serialization formatter plugin. Each formatter assembly implements this interface to provide serialize/deserialize for a specific format (JSON, XML, CSV, YAML, etc.). Discovered automatically at module load time via assembly scanning. </summary> </member> <member name="P:PSDataRepository.Formatters.IFormatterDefinition.Name"> <summary> Canonical formatter name (e.g., "Json", "Xml", "Csv", "Yml"). Must be unique across all loaded formatters. </summary> </member> <member name="P:PSDataRepository.Formatters.IFormatterDefinition.FileExtensions"> <summary> File extensions this formatter handles, including the leading dot (e.g., ".json", ".yml", ".yaml"). Used for automatic format detection from file names. </summary> </member> <member name="M:PSDataRepository.Formatters.IFormatterDefinition.CanDeserializeContent(System.String)"> <summary> Determines whether this formatter can handle the given content string based on heuristics (e.g., starts with '{' for JSON, '<' for XML). Used as fallback when file extension is not available. </summary> <param name="content">The content to analyze.</param> <returns>True if this formatter can likely handle the content.</returns> </member> <member name="M:PSDataRepository.Formatters.IFormatterDefinition.Serialize(System.Object,PSDataRepository.Formatters.FormatterOptions)"> <summary> Serializes an object to a string in this formatter's format. </summary> <param name="input">The object to serialize.</param> <param name="options">Serialization options (maxDepth, delimiter, root name, etc.).</param> <returns>The serialized string.</returns> </member> <member name="M:PSDataRepository.Formatters.IFormatterDefinition.Deserialize(System.String,PSDataRepository.Formatters.FormatterOptions)"> <summary> Deserializes a string back into an object (PSObject, array, scalar, etc.). </summary> <param name="input">The serialized string.</param> <param name="options">Deserialization options.</param> <returns>The deserialized object.</returns> </member> <member name="T:PSDataRepository.Formatters.IFormatterRegistry"> <summary> Registry for formatter plugins. Provides lookup by name and by file extension/content. </summary> </member> <member name="M:PSDataRepository.Formatters.IFormatterRegistry.Register(PSDataRepository.Formatters.IFormatterDefinition)"> <summary> Registers a formatter definition. </summary> </member> <member name="M:PSDataRepository.Formatters.IFormatterRegistry.GetFormatter(System.String)"> <summary> Gets a formatter by its canonical name (e.g., "Json"). </summary> </member> <member name="M:PSDataRepository.Formatters.IFormatterRegistry.GetAll"> <summary> Gets all registered formatters. </summary> </member> <member name="M:PSDataRepository.Formatters.IFormatterRegistry.GetFormatterNames"> <summary> Gets all registered formatter names. </summary> </member> <member name="M:PSDataRepository.Formatters.IFormatterRegistry.DetectFromFileName(System.String)"> <summary> Detects the appropriate formatter from a file name (extension-based). Returns null if no formatter matches. </summary> </member> <member name="M:PSDataRepository.Formatters.IFormatterRegistry.DetectFromContent(System.String)"> <summary> Detects the appropriate formatter from content heuristics. Returns null if no formatter matches. </summary> </member> <member name="M:PSDataRepository.Formatters.IFormatterRegistry.DetectFromNameAndContent(System.String,System.String)"> <summary> Detects formatter from file name first, then falls back to content heuristics. Returns null if no formatter matches. </summary> </member> <member name="M:PSDataRepository.Formatters.IFormatterRegistry.Clear"> <summary>Removes all registered formatters. Used during module reload/testing.</summary> </member> </members> </doc> |