[ 
https://issues.apache.org/jira/browse/TINKERPOP-1854?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16361993#comment-16361993
 ] 

ASF GitHub Bot commented on TINKERPOP-1854:
-------------------------------------------

Github user jorgebay commented on a diff in the pull request:

    https://github.com/apache/tinkerpop/pull/792#discussion_r167789593
  
    --- Diff: 
gremlin-dotnet/src/Gremlin.Net/Structure/IO/GraphSON/LambdaSerializer.cs ---
    @@ -0,0 +1,45 @@
    +#region License
    +
    +/*
    + * Licensed to the Apache Software Foundation (ASF) under one
    + * or more contributor license agreements.  See the NOTICE file
    + * distributed with this work for additional information
    + * regarding copyright ownership.  The ASF licenses this file
    + * to you under the Apache License, Version 2.0 (the
    + * "License"); you may not use this file except in compliance
    + * with the License.  You may obtain a copy of the License at
    + *
    + *     http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * Unless required by applicable law or agreed to in writing,
    + * software distributed under the License is distributed on an
    + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    + * KIND, either express or implied.  See the License for the
    + * specific language governing permissions and limitations
    + * under the License.
    + */
    +
    +#endregion
    +
    +using System.Collections.Generic;
    +using Gremlin.Net.Process.Traversal;
    +
    +namespace Gremlin.Net.Structure.IO.GraphSON
    +{
    +    internal class LambdaSerializer : IGraphSONSerializer
    +    {
    +        private const int DefaultArgument = -1;
    +
    +        public Dictionary<string, dynamic> Dictify(dynamic objectData, 
GraphSONWriter writer)
    +        {
    +            Lambda lambda = objectData;
    +            var valueDict = new Dictionary<string, dynamic>
    +            {
    +                {"script", lambda.LambdaExpression},
    +                {"language", lambda.Language},
    +                {"arguments", DefaultArgument}
    --- End diff --
    
    Use `lambda.Arguments` (which for the existent implementations would return 
`-1`).


> Support lambdas in Gremlin.Net
> ------------------------------
>
>                 Key: TINKERPOP-1854
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1854
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: dotnet
>    Affects Versions: 3.3.0, 3.2.6
>            Reporter: Florian Hockmann
>            Assignee: Florian Hockmann
>            Priority: Major
>
> Gremlin.Net should support lambdas. We already discussed this in [the pull 
> request for TINKERPOP-1752|https://github.com/apache/tinkerpop/pull/712]. 
> Here is what [~spmallette] said over there:
> {quote}
> Any reason we don't support lambdas? Even if .NET can't support them natively 
> for some reason wouldn't we minimally support the ability to pass a 
> python/groovy/etc lambda? it's kinda weird that way, but i think back to the 
> point that kuppitz made on the dev list the other day where he stated that he 
> doesn't always find a way out of using lambdas in production systems he works 
> on - so ultimately users will need that kind of capability i think.
> {quote}
> C# lambdas would require some kind of C# parser on the server side, so at 
> least in the beginning a way to send lambdas from already supported languages 
> in Gremlin.Net should be enough.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to