DslExpression.java
package com.github.mygreen.sqlmapper.metamodel.expression;
import com.github.mygreen.sqlmapper.metamodel.support.OperationUtils;
/**
* DSL式のベースクラス。
*
*
* @author T.TSUCHIE
*
* @param <T> 式のタイプ
*/
public abstract class DslExpression<T> implements Expression<T> {
/**
* 左辺や式の操作対象となるインスタンス
*/
protected final Expression<T> mixin;
public DslExpression(final Expression<T> mixin) {
this.mixin = mixin;
}
@Override
public Class<? extends T> getType() {
return mixin.getType();
}
/**
* {@inheritDoc}
* @return 式ノードを評価結果。
*/
@Override
public String toString() {
return OperationUtils.toDebugString(this);
}
}