Marko A. Rodriguez created TINKERPOP3-819:
---------------------------------------------

             Summary: Mapping Cardinality Interface
                 Key: TINKERPOP3-819
                 URL: https://issues.apache.org/jira/browse/TINKERPOP3-819
             Project: TinkerPop 3
          Issue Type: Improvement
          Components: process
            Reporter: Marko A. Rodriguez
            Assignee: Marko A. Rodriguez
            Priority: Minor


I think it would be handy (for some {{sack()}} work I'm doing on 
merging/splitting sacks), but also in general as I've wanted this before (can't 
remember why). I think we should add the following interfaces.

{code}
ManyToOneMapping (e.g. reducing barriers)
OneToManyMapping (e.g. flatmap)
OneToOneMapping (e.g. map, sideeffects)
OneToOneOrNoneMapping (e.g. filter)
{code}

We can just rely on {{instanceof FlatMapStep}} or {{instanceof MapStep}} as 
there are steps that are "map steps" but don't extend {{MapStep}}, but instead 
{{AbstractStep}}. Either we make it so that all steps MUST extend from 
{{FlatMapStep}}, {{MapStep}}, etc. or we can add the above interfaces.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to