public Optional<Object> getLiteralValue(final int index) {
        ExpressionSegment valueExpression = valueExpressions.get(index);
        if (valueExpression instanceof ParameterMarkerExpressionSegment) {
            return Optional.ofNullable(parameters.get(getParameterIndex((ParameterMarkerExpressionSegment) valueExpression)));
        }
        if (valueExpression instanceof LiteralExpressionSegment) {
            return Optional.ofNullable(((LiteralExpressionSegment) valueExpression).getLiterals());
        }
        return Optional.empty();
    }
@Test
    void assertGetLiteralValueWhenLiteralExpressionSegment() {
        Object literalObject = new Object();
        Collection<ExpressionSegment> assignments = makeLiteralExpressionSegment(literalObject);
        InsertValueContext insertValueContext = new InsertValueContext(assignments, Collections.emptyList(), 0);
        Optional<Object> valueFromInsertValueContext = insertValueContext.getLiteralValue(0);
        assertTrue(valueFromInsertValueContext.isPresent());
        assertThat(valueFromInsertValueContext.get(), is(literalObject));
    }