[ https://issues.apache.org/jira/browse/TINKERPOP-3015?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17786480#comment-17786480 ]
Valentyn Kahamlyk commented on TINKERPOP-3015: ---------------------------------------------- Could you share code example with compilation error? For me works without issues with latest 3.6.x and 3.7.x {code:java} Graph graph = TinkerFactory.createModern(); GraphTraversalSource g = graph.traversal(); Collection<String> ids = Arrays.asList("1","2","3"); List vertices = g.V().hasId(P.within(ids)).toList(); System.out.println(vertices);{code} > Use wildcard instead of Object for hasId predicates > --------------------------------------------------- > > Key: TINKERPOP-3015 > URL: https://issues.apache.org/jira/browse/TINKERPOP-3015 > Project: TinkerPop > Issue Type: Improvement > Affects Versions: 3.5.7, 3.6.5 > Reporter: Christopher Smith > Priority: Minor > > From both {{GraphTraversal}} and {{__}}, the {{hasId(P)}} steps specify a > {{P<Object>}}. Common predicates, such as {{within}}, propagate the generic > type from their own arguments, so that this produces a compile-time error: > {code} > Collection<String> ids = ... > g.V().hasId(P.within(ids)) > {code} > I believe that without loss of safety, the signature in both locations could > be changed to {{P<?>}}, making the typical case of "here's a collection of > IDs of known type" work smoothly. -- This message was sent by Atlassian Jira (v8.20.10#820010)