public IGremlinQuerySerializer OverrideFragmentSerializer <TAtom>(QueryFragmentSerializer <TAtom> queryFragmentSerializer) { return(new GremlinQuerySerializerImpl( _dict .TryGetValue(typeof(TAtom)) .Match( existingAtomSerializer => _dict.SetItem(typeof(TAtom), (atom, baseSerializer, recurse) => queryFragmentSerializer((TAtom)atom, _ => existingAtomSerializer(_, baseSerializer, recurse), recurse)), () => _dict.SetItem(typeof(TAtom), (atom, baseSerializer, recurse) => queryFragmentSerializer((TAtom)atom, _ => baseSerializer(_), recurse))))); }
public IGremlinQuerySerializer OverrideFragmentSerializer <TAtom>(QueryFragmentSerializer <TAtom> queryFragmentSerializer) { return(new SelectGremlinQuerySerializer(_baseSerializer.OverrideFragmentSerializer(queryFragmentSerializer), _projection)); }
public IGremlinQuerySerializer OverrideFragmentSerializer <TAtom>(QueryFragmentSerializer <TAtom> queryFragmentSerializer) { throw new InvalidOperationException($"{nameof(OverrideFragmentSerializer)} must not be called on {nameof(GremlinQuerySerializer)}.{nameof(Invalid)}. If you are getting this exception while executing a query, configure a proper {nameof(IGremlinQuerySerializer)} on your {nameof(GremlinQuerySource)}."); }