Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 0 additions & 25 deletions cpp/Platform.Data/Universal/IUniLinks.h
Original file line number Diff line number Diff line change
@@ -1,25 +0,0 @@


// ReSharper disable TypeParameterCanBeVariant

namespace Platform::Data::Universal
{
public partial interface IUniLinks<TLinkAddress>
{
IList<IList<IList<TLinkAddress>>> Trigger(IList<TLinkAddress> &condition, IList<TLinkAddress> &substitution);
}

public partial interface IUniLinks<TLinkAddress>
{
TLinkAddress Trigger(IList<TLinkAddress> &patternOrCondition, Func<IList<TLinkAddress>, TLinkAddress> matchHandler,
IList<TLinkAddress> &substitution, Func<IList<TLinkAddress>, IList<TLinkAddress>, TLinkAddress> substitutionHandler);

TLinkAddress Trigger(IList<TLinkAddress> &restriction, Func<IList<TLinkAddress>, IList<TLinkAddress>, TLinkAddress> matchedHandler,
IList<TLinkAddress> &substitution, Func<IList<TLinkAddress>, IList<TLinkAddress>, TLinkAddress> substitutedHandler);
}

public partial interface IUniLinks<TLinkAddress>
{
virtual TLinkAddress Count(IList<TLinkAddress> &restriction) = 0;
}
}
17 changes: 0 additions & 17 deletions cpp/Platform.Data/Universal/IUniLinksCRUD.h
Original file line number Diff line number Diff line change
@@ -1,17 +0,0 @@


// ReSharper disable TypeParameterCanBeVariant

namespace Platform::Data::Universal
{
template <typename ...> class IUniLinksCRUD;
template <typename TLinkAddress> class IUniLinksCRUD<TLinkAddress>
{
public:
virtual TLinkAddress Read(std::int32_t partType, TLinkAddress link) = 0;
virtual TLinkAddress Read(Func<TLinkAddress, bool> handler, IList<TLinkAddress> &pattern) = 0;
virtual TLinkAddress Create(IList<TLinkAddress> &parts) = 0;
virtual TLinkAddress Update(IList<TLinkAddress> &before, IList<TLinkAddress> &after) = 0;
virtual void Delete(IList<TLinkAddress> &parts) = 0;
};
}
15 changes: 0 additions & 15 deletions cpp/Platform.Data/Universal/IUniLinksGS.h
Original file line number Diff line number Diff line change
@@ -1,15 +0,0 @@


// ReSharper disable TypeParameterCanBeVariant

namespace Platform::Data::Universal
{
template <typename ...> class IUniLinksGS;
template <typename TLinkAddress> class IUniLinksGS<TLinkAddress>
{
public:
virtual TLinkAddress Get(std::int32_t partType, TLinkAddress link) = 0;
virtual TLinkAddress Get(Func<TLinkAddress, bool> handler, IList<TLinkAddress> &pattern) = 0;
virtual TLinkAddress Set(IList<TLinkAddress> &before, IList<TLinkAddress> &after) = 0;
};
}
15 changes: 0 additions & 15 deletions cpp/Platform.Data/Universal/IUniLinksIO.h
Original file line number Diff line number Diff line change
@@ -1,15 +0,0 @@


// ReSharper disable TypeParameterCanBeVariant

namespace Platform::Data::Universal
{
template <typename ...> class IUniLinksIO;
template <typename TLinkAddress> class IUniLinksIO<TLinkAddress>
{
public:
virtual bool Out(Func<IList<TLinkAddress>, bool> handler, IList<TLinkAddress> &pattern) = 0;

virtual TLinkAddress In(IList<TLinkAddress> &before, IList<TLinkAddress> &after) = 0;
};
}
15 changes: 0 additions & 15 deletions cpp/Platform.Data/Universal/IUniLinksIOWithExtensions.h
Original file line number Diff line number Diff line change
@@ -1,15 +0,0 @@
// ReSharper disable TypeParameterCanBeVariant

namespace Platform::Data::Universal
{
template <typename ...> class IUniLinksIOWithExtensions;
template <typename TLinkAddress> class IUniLinksIOWithExtensions<TLinkAddress> : public IUniLinksIO<TLinkAddress>
{
public:
virtual TLinkAddress OutOne(std::int32_t partType, IList<TLinkAddress> &pattern) = 0;

IList<IList<TLinkAddress>> OutAll(IList<TLinkAddress> &pattern);

virtual std::uint64_t OutCount(IList<TLinkAddress> &pattern) = 0;
};
}
15 changes: 0 additions & 15 deletions cpp/Platform.Data/Universal/IUniLinksRW.h
Original file line number Diff line number Diff line change
@@ -1,15 +0,0 @@


// ReSharper disable TypeParameterCanBeVariant

namespace Platform::Data::Universal
{
template <typename ...> class IUniLinksRW;
template <typename TLinkAddress> class IUniLinksRW<TLinkAddress>
{
public:
virtual TLinkAddress Read(std::int32_t partType, TLinkAddress link) = 0;
virtual bool Read(Func<TLinkAddress, bool> handler, IList<TLinkAddress> &pattern) = 0;
virtual TLinkAddress Write(IList<TLinkAddress> &before, IList<TLinkAddress> &after) = 0;
};
}
87 changes: 0 additions & 87 deletions csharp/Platform.Data/Universal/IUniLinks.cs
Original file line number Diff line number Diff line change
@@ -1,87 +0,0 @@
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

namespace Platform.Data.Universal
{
/// <remarks>Minimal sufficient universal Links API (for bulk operations).</remarks>
public partial interface IUniLinks<TLinkAddress>
{
/// <summary>
/// <para>
/// Triggers the condition.
/// </para>
/// <para></para>
/// </summary>
/// <param name="condition">
/// <para>The condition.</para>
/// <para></para>
/// </param>
/// <param name="substitution">
/// <para>The substitution.</para>
/// <para></para>
/// </param>
/// <returns>
/// <para>A list of i list i list t link address</para>
/// <para></para>
/// </returns>
IList<IList<IList<TLinkAddress>?>> Trigger(IList<TLinkAddress>? condition, IList<TLinkAddress>? substitution);
}

/// <remarks>Minimal sufficient universal Links API (for step by step operations).</remarks>
public partial interface IUniLinks<TLinkAddress>
{
/// <returns>
/// 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.
/// </returns>
/// <remarks>
/// { 0, 0, 0 } => { itself, itself, itself } // create
/// { 1, any, any } => { itself, any, 3 } // update
/// { 3, any, any } => { 0, 0, 0 } // delete
/// </remarks>
TLinkAddress Trigger(IList<TLinkAddress>? patternOrCondition, ReadHandler<TLinkAddress>? matchHandler,
IList<TLinkAddress>? substitution, WriteHandler<TLinkAddress>? substitutionHandler);

/// <summary>
/// <para>
/// Triggers the restriction.
/// </para>
/// <para></para>
/// </summary>
/// <param name="restriction">
/// <para>The restriction.</para>
/// <para></para>
/// </param>
/// <param name="matchedHandler">
/// <para>The matched handler.</para>
/// <para></para>
/// </param>
/// <param name="substitution">
/// <para>The substitution.</para>
/// <para></para>
/// </param>
/// <param name="substitutedHandler">
/// <para>The substituted handler.</para>
/// <para></para>
/// </param>
/// <returns>
/// <para>The link address</para>
/// <para></para>
/// </returns>
TLinkAddress Trigger(IList<TLinkAddress>? restriction, WriteHandler<TLinkAddress>? matchedHandler,
IList<TLinkAddress>? substitution, WriteHandler<TLinkAddress>? substitutedHandler);
}

/// <remarks>Extended with small optimization.</remarks>
public partial interface IUniLinks<TLinkAddress>
{
/// <remarks>
/// Something simple should be simple and optimized.
/// </remarks>
TLinkAddress Count(IList<TLinkAddress>? restrictions);
}
}
98 changes: 0 additions & 98 deletions csharp/Platform.Data/Universal/IUniLinksCRUD.cs
Original file line number Diff line number Diff line change
@@ -1,98 +0,0 @@
using System;
using System.Collections.Generic;

// ReSharper disable TypeParameterCanBeVariant
#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member

namespace Platform.Data.Universal
{
/// <remarks>
/// CRUD aliases for IUniLinks.
/// </remarks>
public interface IUniLinksCRUD<TLinkAddress>
{
/// <summary>
/// <para>
/// Reads the part type.
/// </para>
/// <para></para>
/// </summary>
/// <param name="partType">
/// <para>The part type.</para>
/// <para></para>
/// </param>
/// <param name="link">
/// <para>The link.</para>
/// <para></para>
/// </param>
/// <returns>
/// <para>The link address</para>
/// <para></para>
/// </returns>
TLinkAddress Read(int partType, TLinkAddress link);
/// <summary>
/// <para>
/// Reads the handler.
/// </para>
/// <para></para>
/// </summary>
/// <param name="handler">
/// <para>The handler.</para>
/// <para></para>
/// </param>
/// <param name="pattern">
/// <para>The pattern.</para>
/// <para></para>
/// </param>
/// <returns>
/// <para>The link address</para>
/// <para></para>
/// </returns>
TLinkAddress Read(Func<TLinkAddress, bool> handler, IList<TLinkAddress>? pattern);
/// <summary>
/// <para>
/// Creates the parts.
/// </para>
/// <para></para>
/// </summary>
/// <param name="parts">
/// <para>The parts.</para>
/// <para></para>
/// </param>
/// <returns>
/// <para>The link address</para>
/// <para></para>
/// </returns>
TLinkAddress Create(IList<TLinkAddress>? parts);
/// <summary>
/// <para>
/// Updates the before.
/// </para>
/// <para></para>
/// </summary>
/// <param name="before">
/// <para>The before.</para>
/// <para></para>
/// </param>
/// <param name="after">
/// <para>The after.</para>
/// <para></para>
/// </param>
/// <returns>
/// <para>The link address</para>
/// <para></para>
/// </returns>
TLinkAddress Update(IList<TLinkAddress>? before, IList<TLinkAddress>? after);
/// <summary>
/// <para>
/// Deletes the parts.
/// </para>
/// <para></para>
/// </summary>
/// <param name="parts">
/// <para>The parts.</para>
/// <para></para>
/// </param>
TLinkAddress Delete(IList<TLinkAddress>? parts);
}
}
72 changes: 0 additions & 72 deletions csharp/Platform.Data/Universal/IUniLinksGS.cs
Original file line number Diff line number Diff line change
@@ -1,72 +0,0 @@
using System;
using System.Collections.Generic;

// ReSharper disable TypeParameterCanBeVariant
#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member

namespace Platform.Data.Universal
{
/// <remarks>
/// Get/Set aliases for IUniLinks.
/// </remarks>
public interface IUniLinksGS<TLinkAddress>
{
/// <summary>
/// <para>
/// Gets the part type.
/// </para>
/// <para></para>
/// </summary>
/// <param name="partType">
/// <para>The part type.</para>
/// <para></para>
/// </param>
/// <param name="link">
/// <para>The link.</para>
/// <para></para>
/// </param>
/// <returns>
/// <para>The link address</para>
/// <para></para>
/// </returns>
TLinkAddress Get(int partType, TLinkAddress link);
/// <summary>
/// <para>
/// Gets the handler.
/// </para>
/// <para></para>
/// </summary>
/// <param name="handler">
/// <para>The handler.</para>
/// <para></para>
/// </param>
/// <param name="pattern">
/// <para>The pattern.</para>
/// <para></para>
/// </param>
/// <returns>
/// <para>The link address</para>
/// <para></para>
/// </returns>
TLinkAddress Get(Func<TLinkAddress, bool> handler, IList<TLinkAddress>? pattern);
/// <summary>
/// <para>
/// Sets the before.
/// </para>
/// <para></para>
/// </summary>
/// <param name="before">
/// <para>The before.</para>
/// <para></para>
/// </param>
/// <param name="after">
/// <para>The after.</para>
/// <para></para>
/// </param>
/// <returns>
/// <para>The link address</para>
/// <para></para>
/// </returns>
TLinkAddress Set(IList<TLinkAddress>? before, IList<TLinkAddress>? after);
}
}
Loading
Loading