/// <inheritdoc />
        public Task <Result <LevelSelectors> > GetLevelSelectorsAsync(Context context, Fingerprint weakFingerprint, CancellationToken cts, int level)
        {
            if (_memoizationReadOnlySession is IReadOnlyMemoizationSessionWithLevelSelectors withLevelSelectors)
            {
                return(withLevelSelectors.GetLevelSelectorsAsync(context, weakFingerprint, cts, level));
            }

            throw new NotSupportedException($"ReadOnlyMemoization session {_memoizationReadOnlySession.GetType().Name} does not support GetLevelSelectors functionality.");
        }
Example #2
0
 /// <summary>
 ///     Initializes a new instance of the <see cref="StrongFingerprint" /> struct.
 /// </summary>
 public StrongFingerprint(Fingerprint weakFingerprint, Selector selector)
 {
     WeakFingerprint = weakFingerprint;
     Selector        = selector;
 }
 /// <inheritdoc />
 public System.Collections.Generic.IAsyncEnumerable <GetSelectorResult> GetSelectors(Context context, Fingerprint weakFingerprint, CancellationToken cts, UrgencyHint urgencyHint = UrgencyHint.Nominal)
 {
     return(this.GetSelectorsAsAsyncEnumerable(context, weakFingerprint, cts, urgencyHint));
 }
Example #4
0
 /// <summary>
 ///     Create a random value.
 /// </summary>
 public static StrongFingerprint Random(
     int weakFingerprintLength = Fingerprint.MaxLength, HashType selectorHashType = HashType.SHA1)
 {
     return(new StrongFingerprint(Fingerprint.Random(weakFingerprintLength), Selector.Random(selectorHashType)));
 }