diff --git a/csharp/Platform.Data/Universal/IUniLinks.cs b/csharp/Platform.Data/Universal/IUniLinks.cs index 8faf2687..046f28be 100644 --- a/csharp/Platform.Data/Universal/IUniLinks.cs +++ b/csharp/Platform.Data/Universal/IUniLinks.cs @@ -1,87 +1,5 @@ -using System; -using System.Collections.Generic; -using Platform.Delegates; - -// ReSharper disable TypeParameterCanBeVariant -#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member +// This file is made for future research and should not be translated at the moment. namespace Platform.Data.Universal { - /// Minimal sufficient universal Links API (for bulk operations). - public partial interface IUniLinks - { - /// - /// - /// Triggers the condition. - /// - /// - /// - /// - /// The condition. - /// - /// - /// - /// The substitution. - /// - /// - /// - /// A list of i list i list t link address - /// - /// - IList?>> Trigger(IList? condition, IList? substitution); - } - - /// Minimal sufficient universal Links API (for step by step operations). - public partial interface IUniLinks - { - /// - /// TLinkAddress that represents True (was finished fully) or TLinkAddress that represents False (was stopped). - /// This is done to assure ability to push up stop signal through recursion stack. - /// - /// - /// { 0, 0, 0 } => { itself, itself, itself } // create - /// { 1, any, any } => { itself, any, 3 } // update - /// { 3, any, any } => { 0, 0, 0 } // delete - /// - TLinkAddress Trigger(IList? patternOrCondition, ReadHandler? matchHandler, - IList? substitution, WriteHandler? substitutionHandler); - - /// - /// - /// Triggers the restriction. - /// - /// - /// - /// - /// The restriction. - /// - /// - /// - /// The matched handler. - /// - /// - /// - /// The substitution. - /// - /// - /// - /// The substituted handler. - /// - /// - /// - /// The link address - /// - /// - TLinkAddress Trigger(IList? restriction, WriteHandler? matchedHandler, - IList? substitution, WriteHandler? substitutedHandler); - } - - /// Extended with small optimization. - public partial interface IUniLinks - { - /// - /// Something simple should be simple and optimized. - /// - TLinkAddress Count(IList? restrictions); - } } diff --git a/csharp/Platform.Data/Universal/IUniLinksCRUD.cs b/csharp/Platform.Data/Universal/IUniLinksCRUD.cs index a569b73e..046f28be 100644 --- a/csharp/Platform.Data/Universal/IUniLinksCRUD.cs +++ b/csharp/Platform.Data/Universal/IUniLinksCRUD.cs @@ -1,98 +1,5 @@ -using System; -using System.Collections.Generic; - -// ReSharper disable TypeParameterCanBeVariant -#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member +// This file is made for future research and should not be translated at the moment. namespace Platform.Data.Universal { - /// - /// CRUD aliases for IUniLinks. - /// - public interface IUniLinksCRUD - { - /// - /// - /// Reads the part type. - /// - /// - /// - /// - /// The part type. - /// - /// - /// - /// The link. - /// - /// - /// - /// The link address - /// - /// - TLinkAddress Read(int partType, TLinkAddress link); - /// - /// - /// Reads the handler. - /// - /// - /// - /// - /// The handler. - /// - /// - /// - /// The pattern. - /// - /// - /// - /// The link address - /// - /// - TLinkAddress Read(Func handler, IList? pattern); - /// - /// - /// Creates the parts. - /// - /// - /// - /// - /// The parts. - /// - /// - /// - /// The link address - /// - /// - TLinkAddress Create(IList? parts); - /// - /// - /// Updates the before. - /// - /// - /// - /// - /// The before. - /// - /// - /// - /// The after. - /// - /// - /// - /// The link address - /// - /// - TLinkAddress Update(IList? before, IList? after); - /// - /// - /// Deletes the parts. - /// - /// - /// - /// - /// The parts. - /// - /// - TLinkAddress Delete(IList? parts); - } } diff --git a/csharp/Platform.Data/Universal/IUniLinksGS.cs b/csharp/Platform.Data/Universal/IUniLinksGS.cs index d62697d3..ae501421 100644 --- a/csharp/Platform.Data/Universal/IUniLinksGS.cs +++ b/csharp/Platform.Data/Universal/IUniLinksGS.cs @@ -1,72 +1,5 @@ -using System; -using System.Collections.Generic; - -// ReSharper disable TypeParameterCanBeVariant -#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member +// This file is made for future research and should not be translated at the moment. namespace Platform.Data.Universal { - /// - /// Get/Set aliases for IUniLinks. - /// - public interface IUniLinksGS - { - /// - /// - /// Gets the part type. - /// - /// - /// - /// - /// The part type. - /// - /// - /// - /// The link. - /// - /// - /// - /// The link address - /// - /// - TLinkAddress Get(int partType, TLinkAddress link); - /// - /// - /// Gets the handler. - /// - /// - /// - /// - /// The handler. - /// - /// - /// - /// The pattern. - /// - /// - /// - /// The link address - /// - /// - TLinkAddress Get(Func handler, IList? pattern); - /// - /// - /// Sets the before. - /// - /// - /// - /// - /// The before. - /// - /// - /// - /// The after. - /// - /// - /// - /// The link address - /// - /// - TLinkAddress Set(IList? before, IList? after); - } } \ No newline at end of file diff --git a/csharp/Platform.Data/Universal/IUniLinksIO.cs b/csharp/Platform.Data/Universal/IUniLinksIO.cs index 78f8ebe0..ae501421 100644 --- a/csharp/Platform.Data/Universal/IUniLinksIO.cs +++ b/csharp/Platform.Data/Universal/IUniLinksIO.cs @@ -1,51 +1,5 @@ -using System; -using System.Collections.Generic; - -// ReSharper disable TypeParameterCanBeVariant -#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member +// This file is made for future research and should not be translated at the moment. namespace Platform.Data.Universal { - /// - /// In/Out aliases for IUniLinks. - /// TLinkAddress can be any number type of any size. - /// - public interface IUniLinksIO - { - /// - /// default(TLinkAddress) means any link. - /// Single element pattern means just element (link). - /// Handler gets array of link contents. - /// * link[0] is index or identifier. - /// * link[1] is source or first. - /// * link[2] is target or second. - /// * link[3] is linker or third. - /// * link[n] is nth part/parent/element/value - /// of link (if variable length links used). - /// - /// Stops and returns false if handler return false. - /// - /// Acts as Each, Foreach, Select, Search, Match & ... - /// - /// Handles all links in store if pattern/restrictions is not defined. - /// - bool Out(Func?, bool> handler, IList? pattern); - - /// - /// default(TLinkAddress) means itself. - /// Equivalent to: - /// * creation if before == null - /// * deletion if after == null - /// * update if before != null && after != null - /// * default(TLinkAddress) if before == null && after == null - /// - /// Possible interpretation - /// * In(null, new[] { }) creates point (link that points to itself using minimum number of parts). - /// * In(new[] { 4 }, null) deletes 4th link. - /// * In(new[] { 4 }, new [] { 5 }) delete 5th link if it exists and moves 4th link to 5th index. - /// * In(new[] { 4 }, new [] { 0, 2, 3 }) replaces 4th link with new doublet link (with 2 as source and 3 as target), 0 means it can be placed in any address. - /// ... - /// - TLinkAddress In(IList? before, IList? after); - } } \ No newline at end of file diff --git a/csharp/Platform.Data/Universal/IUniLinksIOWithExtensions.cs b/csharp/Platform.Data/Universal/IUniLinksIOWithExtensions.cs index 2da78975..ae501421 100644 --- a/csharp/Platform.Data/Universal/IUniLinksIOWithExtensions.cs +++ b/csharp/Platform.Data/Universal/IUniLinksIOWithExtensions.cs @@ -1,31 +1,5 @@ -// ReSharper disable TypeParameterCanBeVariant -#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member - -using System.Collections.Generic; +// This file is made for future research and should not be translated at the moment. namespace Platform.Data.Universal { - /// Contains some optimizations of Out. - public interface IUniLinksIOWithExtensions : IUniLinksIO - { - /// - /// default(TLinkAddress) means nothing or null. - /// Single element pattern means just element (link). - /// OutPart(n, null) returns default(TLinkAddress). - /// OutPart(0, pattern) ~ Exists(link) or Search(pattern) - /// OutPart(1, pattern) ~ GetSource(link) or GetSource(Search(pattern)) - /// OutPart(2, pattern) ~ GetTarget(link) or GetTarget(Search(pattern)) - /// OutPart(3, pattern) ~ GeTLinkAddresser(link) or GeTLinkAddresser(Search(pattern)) - /// OutPart(n, pattern) => For any variable length links, returns link or default(TLinkAddress). - /// - /// Outs(returns) inner contents of link, its part/parent/element/value. - /// - TLinkAddress OutOne(int partType, IList? pattern); - - /// OutCount() returns total links in store as array. - IList?> OutAll(IList? pattern); - - /// OutCount() returns total amount of links in store. - ulong OutCount(IList? pattern); - } } \ No newline at end of file diff --git a/csharp/Platform.Data/Universal/IUniLinksRW.cs b/csharp/Platform.Data/Universal/IUniLinksRW.cs index b4b2ad55..ae501421 100644 --- a/csharp/Platform.Data/Universal/IUniLinksRW.cs +++ b/csharp/Platform.Data/Universal/IUniLinksRW.cs @@ -1,72 +1,5 @@ -using System; -using System.Collections.Generic; - -// ReSharper disable TypeParameterCanBeVariant -#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member +// This file is made for future research and should not be translated at the moment. namespace Platform.Data.Universal { - /// - /// Read/Write aliases for IUniLinks. - /// - public interface IUniLinksRW - { - /// - /// - /// Reads the part type. - /// - /// - /// - /// - /// The part type. - /// - /// - /// - /// The link. - /// - /// - /// - /// The link address - /// - /// - TLinkAddress Read(int partType, TLinkAddress link); - /// - /// - /// Determines whether this instance read. - /// - /// - /// - /// - /// The handler. - /// - /// - /// - /// The pattern. - /// - /// - /// - /// The bool - /// - /// - bool Read(Func handler, IList? pattern); - /// - /// - /// Writes the before. - /// - /// - /// - /// - /// The before. - /// - /// - /// - /// The after. - /// - /// - /// - /// The link address - /// - /// - TLinkAddress Write(IList? before, IList? after); - } } \ No newline at end of file