package org.develnext.jphp.core.compiler.jvm.statement.expr.value;
import org.develnext.jphp.core.compiler.jvm.statement.ExpressionStmtCompiler;
import org.develnext.jphp.core.compiler.jvm.statement.expr.BaseExprCompiler;
import org.develnext.jphp.core.compiler.jvm.statement.expr.BaseStatementCompiler;
import org.develnext.jphp.core.tokenizer.token.expr.ClassExprToken;
import org.develnext.jphp.core.tokenizer.token.expr.ValueExprToken;
import org.develnext.jphp.core.tokenizer.token.expr.operator.StaticAccessOperatorExprToken;
import org.develnext.jphp.core.tokenizer.token.expr.value.*;
import php.runtime.Memory;
import php.runtime.env.Environment;
import php.runtime.env.TraceInfo;
import php.runtime.invoke.ObjectInvokeHelper;
import php.runtime.invoke.cache.ConstantCallCache;
import php.runtime.invoke.cache.PropertyCallCache;
public class StaticAccessValueAsOperatorCompiler extends BaseExprCompiler<StaticAccessOperatorExprToken> {
public StaticAccessValueAsOperatorCompiler(ExpressionStmtCompiler exprCompiler) {
super(exprCompiler);
}
@Override
public void write(StaticAccessOperatorExprToken token, boolean returnValue) {
StaticAccessExprToken origin = token.getOrigin();
BaseExprCompiler<StaticAccessExprToken> compiler = (BaseExprCompiler<StaticAccessExprToken>) expr.getCompiler(StaticAccessExprToken.class);
compiler.write(origin, returnValue);
}
}