X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/Reference.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/Reference.java index 035cee0..e7a1519 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/Reference.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/Reference.java @@ -15,57 +15,71 @@ import net.sourceforge.phpdt.internal.compiler.flow.FlowInfo; import net.sourceforge.phpdt.internal.compiler.lookup.BlockScope; import net.sourceforge.phpdt.internal.compiler.lookup.FieldBinding; -public abstract class Reference extends Expression { -/** - * BaseLevelReference constructor comment. - */ -public Reference() { - super(); -} -public abstract FlowInfo analyseAssignment(BlockScope currentScope, FlowContext flowContext, FlowInfo flowInfo, Assignment assignment, boolean isCompound); +public abstract class Reference extends Expression { + /** + * BaseLevelReference constructor comment. + */ + public Reference() { + super(); + } -public FlowInfo analyseCode(BlockScope currentScope, FlowContext flowContext, FlowInfo flowInfo) { - return flowInfo; -} -public FieldBinding fieldBinding() { - //this method should be sent one FIELD-tagged references - // (ref.bits & BindingIds.FIELD != 0)() - return null ; -} -//public void fieldStore(CodeStream codeStream, FieldBinding fieldBinding, MethodBinding syntheticWriteAccessor, boolean valueRequired) { -// -// if (fieldBinding.isStatic()) { -// if (valueRequired) { -// if ((fieldBinding.type == LongBinding) || (fieldBinding.type == DoubleBinding)) { -// codeStream.dup2(); -// } else { -// codeStream.dup(); -// } -// } -// if (syntheticWriteAccessor == null) { -// codeStream.putstatic(fieldBinding); -// } else { -// codeStream.invokestatic(syntheticWriteAccessor); -// } -// } else { // Stack: [owner][new field value] ---> [new field value][owner][new field value] -// if (valueRequired) { -// if ((fieldBinding.type == LongBinding) || (fieldBinding.type == DoubleBinding)) { -// codeStream.dup2_x1(); -// } else { -// codeStream.dup_x1(); -// } -// } -// if (syntheticWriteAccessor == null) { -// codeStream.putfield(fieldBinding); -// } else { -// codeStream.invokestatic(syntheticWriteAccessor); -// } -// } -//} -//public abstract void generateAssignment(BlockScope currentScope, CodeStream codeStream, Assignment assignment, boolean valueRequired); -// -//public abstract void generateCompoundAssignment(BlockScope currentScope, CodeStream codeStream, Expression expression, int operator, int assignmentImplicitConversion, boolean valueRequired); -// -//public abstract void generatePostIncrement(BlockScope currentScope, CodeStream codeStream, CompoundAssignment postIncrement, boolean valueRequired); + public abstract FlowInfo analyseAssignment(BlockScope currentScope, + FlowContext flowContext, FlowInfo flowInfo, Assignment assignment, + boolean isCompound); + + public FlowInfo analyseCode(BlockScope currentScope, + FlowContext flowContext, FlowInfo flowInfo) { + return flowInfo; + } + + public FieldBinding fieldBinding() { + // this method should be sent one FIELD-tagged references + // (ref.bits & BindingIds.FIELD != 0)() + return null; + } + // public void fieldStore(CodeStream codeStream, FieldBinding fieldBinding, + // MethodBinding syntheticWriteAccessor, boolean valueRequired) { + // + // if (fieldBinding.isStatic()) { + // if (valueRequired) { + // if ((fieldBinding.type == LongBinding) || (fieldBinding.type == + // DoubleBinding)) { + // codeStream.dup2(); + // } else { + // codeStream.dup(); + // } + // } + // if (syntheticWriteAccessor == null) { + // codeStream.putstatic(fieldBinding); + // } else { + // codeStream.invokestatic(syntheticWriteAccessor); + // } + // } else { // Stack: [owner][new field value] ---> [new field + // value][owner][new field value] + // if (valueRequired) { + // if ((fieldBinding.type == LongBinding) || (fieldBinding.type == + // DoubleBinding)) { + // codeStream.dup2_x1(); + // } else { + // codeStream.dup_x1(); + // } + // } + // if (syntheticWriteAccessor == null) { + // codeStream.putfield(fieldBinding); + // } else { + // codeStream.invokestatic(syntheticWriteAccessor); + // } + // } + // } + // public abstract void generateAssignment(BlockScope currentScope, + // CodeStream codeStream, Assignment assignment, boolean valueRequired); + // + // public abstract void generateCompoundAssignment(BlockScope currentScope, + // CodeStream codeStream, Expression expression, int operator, int + // assignmentImplicitConversion, boolean valueRequired); + // + // public abstract void generatePostIncrement(BlockScope currentScope, + // CodeStream codeStream, CompoundAssignment postIncrement, boolean + // valueRequired); }