From b7331c7542c14dc48145da1a2c7e8be063caa449 Mon Sep 17 00:00:00 2001 From: Daniel Weber Date: Sat, 17 Aug 2024 21:48:30 +0200 Subject: [PATCH] Allow null values in bindings. --- src/Core/SerializedQueries/GroovyGremlinScript.cs | 8 ++++---- src/Core/SerializedQueries/GroovyWriter.cs | 4 ++-- src/Providers.Core/Extensions/RequestMessageExtensions.cs | 4 ++-- .../PublicApiTests.Core.DotNet6_0.verified.cs | 6 +++--- .../PublicApiTests.Core.DotNet7_0.verified.cs | 6 +++--- .../PublicApiTests.Core.DotNet8_0.verified.cs | 6 +++--- 6 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/Core/SerializedQueries/GroovyGremlinScript.cs b/src/Core/SerializedQueries/GroovyGremlinScript.cs index b85539f4d..090b21a44 100644 --- a/src/Core/SerializedQueries/GroovyGremlinScript.cs +++ b/src/Core/SerializedQueries/GroovyGremlinScript.cs @@ -7,14 +7,14 @@ namespace ExRam.Gremlinq.Core.Serialization public readonly struct GroovyGremlinScript { private readonly string? _script; - private readonly ImmutableDictionary? _bindings; + private readonly ImmutableDictionary? _bindings; [Obsolete($"Use {nameof(GroovyGremlinScript)}({nameof(String)}, {nameof(ImmutableDictionary)}) constructor instead.")] - public GroovyGremlinScript(string script, IReadOnlyDictionary bindings) : this(script, bindings.ToImmutableDictionary()) + public GroovyGremlinScript(string script, IReadOnlyDictionary bindings) : this(script, bindings.ToImmutableDictionary()) { } - public GroovyGremlinScript(string script, ImmutableDictionary bindings) + public GroovyGremlinScript(string script, ImmutableDictionary bindings) { _script = script; _bindings = bindings; @@ -24,6 +24,6 @@ public GroovyGremlinScript(string script, ImmutableDictionary bi public string Script => _script ?? throw UninitializedStruct(); - public ImmutableDictionary Bindings => _bindings ?? throw UninitializedStruct(); + public ImmutableDictionary Bindings => _bindings ?? throw UninitializedStruct(); } } diff --git a/src/Core/SerializedQueries/GroovyWriter.cs b/src/Core/SerializedQueries/GroovyWriter.cs index dfdff95dc..4b2cdcf78 100644 --- a/src/Core/SerializedQueries/GroovyWriter.cs +++ b/src/Core/SerializedQueries/GroovyWriter.cs @@ -43,8 +43,8 @@ public static GroovyGremlinScript ToGroovyScript(Bytecode bytecode, IGremlinQuer return new GroovyGremlinScript( stringBuilder.ToString(), includeBindings - ? bindings.ToImmutableDictionary(static kvp => (string)kvp.Value, static kvp => kvp.Key) - : ImmutableDictionary.Empty); + ? bindings.ToImmutableDictionary(static kvp => (string)kvp.Value, static kvp => (object?)kvp.Key) + : ImmutableDictionary.Empty); } private GroovyWriter Append( diff --git a/src/Providers.Core/Extensions/RequestMessageExtensions.cs b/src/Providers.Core/Extensions/RequestMessageExtensions.cs index 5b2d3eb35..8f949d057 100644 --- a/src/Providers.Core/Extensions/RequestMessageExtensions.cs +++ b/src/Providers.Core/Extensions/RequestMessageExtensions.cs @@ -24,9 +24,9 @@ internal static class RequestMessageExtensions { return new GroovyGremlinScript( script, - includeBindings && requestMessage.Arguments.TryGetValue(Tokens.ArgsBindings, out var bindingsObject) && bindingsObject is IReadOnlyDictionary bindings + includeBindings && requestMessage.Arguments.TryGetValue(Tokens.ArgsBindings, out var bindingsObject) && bindingsObject is IReadOnlyDictionary bindings ? bindings.ToImmutableDictionary() - : ImmutableDictionary.Empty); + : ImmutableDictionary.Empty); } } diff --git a/test/PublicApi.Tests/PublicApiTests.Core.DotNet6_0.verified.cs b/test/PublicApi.Tests/PublicApiTests.Core.DotNet6_0.verified.cs index 4368b806f..eeeb8d9a6 100644 --- a/test/PublicApi.Tests/PublicApiTests.Core.DotNet6_0.verified.cs +++ b/test/PublicApi.Tests/PublicApiTests.Core.DotNet6_0.verified.cs @@ -1576,9 +1576,9 @@ public static ExRam.Gremlinq.Core.Serialization.GroovyExpression From(string ide public readonly struct GroovyGremlinScript { [System.Obsolete("Use GroovyGremlinScript(String, ImmutableDictionary) constructor instead.")] - public GroovyGremlinScript(string script, System.Collections.Generic.IReadOnlyDictionary bindings) { } - public GroovyGremlinScript(string script, System.Collections.Immutable.ImmutableDictionary bindings) { } - public System.Collections.Immutable.ImmutableDictionary Bindings { get; } + public GroovyGremlinScript(string script, System.Collections.Generic.IReadOnlyDictionary bindings) { } + public GroovyGremlinScript(string script, System.Collections.Immutable.ImmutableDictionary bindings) { } + public System.Collections.Immutable.ImmutableDictionary Bindings { get; } public string Script { get; } public override string ToString() { } } diff --git a/test/PublicApi.Tests/PublicApiTests.Core.DotNet7_0.verified.cs b/test/PublicApi.Tests/PublicApiTests.Core.DotNet7_0.verified.cs index 4368b806f..eeeb8d9a6 100644 --- a/test/PublicApi.Tests/PublicApiTests.Core.DotNet7_0.verified.cs +++ b/test/PublicApi.Tests/PublicApiTests.Core.DotNet7_0.verified.cs @@ -1576,9 +1576,9 @@ public static ExRam.Gremlinq.Core.Serialization.GroovyExpression From(string ide public readonly struct GroovyGremlinScript { [System.Obsolete("Use GroovyGremlinScript(String, ImmutableDictionary) constructor instead.")] - public GroovyGremlinScript(string script, System.Collections.Generic.IReadOnlyDictionary bindings) { } - public GroovyGremlinScript(string script, System.Collections.Immutable.ImmutableDictionary bindings) { } - public System.Collections.Immutable.ImmutableDictionary Bindings { get; } + public GroovyGremlinScript(string script, System.Collections.Generic.IReadOnlyDictionary bindings) { } + public GroovyGremlinScript(string script, System.Collections.Immutable.ImmutableDictionary bindings) { } + public System.Collections.Immutable.ImmutableDictionary Bindings { get; } public string Script { get; } public override string ToString() { } } diff --git a/test/PublicApi.Tests/PublicApiTests.Core.DotNet8_0.verified.cs b/test/PublicApi.Tests/PublicApiTests.Core.DotNet8_0.verified.cs index 4368b806f..eeeb8d9a6 100644 --- a/test/PublicApi.Tests/PublicApiTests.Core.DotNet8_0.verified.cs +++ b/test/PublicApi.Tests/PublicApiTests.Core.DotNet8_0.verified.cs @@ -1576,9 +1576,9 @@ public static ExRam.Gremlinq.Core.Serialization.GroovyExpression From(string ide public readonly struct GroovyGremlinScript { [System.Obsolete("Use GroovyGremlinScript(String, ImmutableDictionary) constructor instead.")] - public GroovyGremlinScript(string script, System.Collections.Generic.IReadOnlyDictionary bindings) { } - public GroovyGremlinScript(string script, System.Collections.Immutable.ImmutableDictionary bindings) { } - public System.Collections.Immutable.ImmutableDictionary Bindings { get; } + public GroovyGremlinScript(string script, System.Collections.Generic.IReadOnlyDictionary bindings) { } + public GroovyGremlinScript(string script, System.Collections.Immutable.ImmutableDictionary bindings) { } + public System.Collections.Immutable.ImmutableDictionary Bindings { get; } public string Script { get; } public override string ToString() { } }