class BeamSqlDotExpression extends BeamSqlExpression {

  @Override
  public BeamSqlPrimitive evaluate(
      Row inputRow, BoundedWindow window, BeamSqlExpressionEnvironment env) {
    Row dynamicRow = (Row) opValueEvaluated(0, inputRow, window, env);
    String fieldName = (String) opValueEvaluated(1, inputRow, window, env);
    SqlTypeName fieldType = getFieldType(dynamicRow, fieldName);

    return BeamSqlPrimitive.of(fieldType, dynamicRow.getValue(fieldName));
  }

  public  BeamSqlDotExpression(List<BeamSqlExpression> operands, SqlTypeName sqlTypeName);

}