public CypherEntityQueryableExpressionVisitorDependencies(
     [NotNull] IModel model,
     [NotNull] IReadOnlyExpressionFactory readOnlyExpressionFactory,
     [NotNull] ICypherMaterializerFactory materializerFactory,
     [NotNull] IShaperCommandContextFactory shaperCommandContextFactory
     )
 {
     Model = model;
     ReadOnlyExpressionFactory   = readOnlyExpressionFactory;
     MaterializerFactory         = materializerFactory;
     ShaperCommandContextFactory = shaperCommandContextFactory;
 }
        public CypherEntityQueryableExpressionVisitor(
            [NotNull] CypherEntityQueryableExpressionVisitorDependencies dependencies,
            [NotNull] CypherQueryModelVisitor queryModelVisitor,
            [CanBeNull] IQuerySource querySource
            ) : base(Check.NotNull(queryModelVisitor, nameof(queryModelVisitor)))
        {
            Check.NotNull(dependencies, nameof(dependencies));

            _model       = dependencies.Model;
            _querySource = querySource;
            _readOnlyExpressionFactory   = dependencies.ReadOnlyExpressionFactory;
            _materializerFactory         = dependencies.MaterializerFactory;
            _shaperCommandContextFactory = dependencies.ShaperCommandContextFactory;
        }