@VisibleForTesting
  Object evaluate(final GenericRow row) {
    return term.getValue(new TermEvaluationContext(row));
  }
@Test
  public void shouldEvaluateStructDereference() {
    // Given:
    final Expression expression1 = new DereferenceExpression(
        Optional.empty(),
        new CreateStructExpression(
          ImmutableList.of(
              new Field("A", new IntegerLiteral(10)),
              new Field("B", new StringLiteral("abc"))
          )
        ),
        "A"
    );


    // When:
    InterpretedExpression interpreter1 = interpreter(expression1);

    // Then:
    assertThat(interpreter1.evaluate(ROW), is(10));
  }