mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/jpexs-decompiler.git
synced 2026-06-24 01:45:33 +00:00
hasSideEffect method
This commit is contained in:
@@ -22,7 +22,6 @@ import com.jpexs.decompiler.flash.abc.avm2.AVM2ConstantPool;
|
||||
import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction;
|
||||
import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition;
|
||||
import com.jpexs.decompiler.flash.abc.avm2.instructions.SetTypeIns;
|
||||
import com.jpexs.decompiler.flash.abc.avm2.model.AVM2Item;
|
||||
import com.jpexs.decompiler.flash.abc.avm2.model.DecrementAVM2Item;
|
||||
import com.jpexs.decompiler.flash.abc.avm2.model.FindPropertyAVM2Item;
|
||||
import com.jpexs.decompiler.flash.abc.avm2.model.IncrementAVM2Item;
|
||||
@@ -33,14 +32,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.PostIncrementAVM2Item;
|
||||
import com.jpexs.decompiler.flash.abc.avm2.model.SetLocalAVM2Item;
|
||||
import com.jpexs.decompiler.flash.abc.avm2.model.operations.PreDecrementAVM2Item;
|
||||
import com.jpexs.decompiler.flash.abc.avm2.model.operations.PreIncrementAVM2Item;
|
||||
import com.jpexs.decompiler.flash.abc.types.MethodBody;
|
||||
import com.jpexs.decompiler.graph.DottedChain;
|
||||
import com.jpexs.decompiler.graph.GraphTargetItem;
|
||||
import com.jpexs.decompiler.graph.TranslateStack;
|
||||
import com.jpexs.decompiler.graph.model.CompoundableBinaryOp;
|
||||
import com.jpexs.decompiler.graph.model.PopItem;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Stack;
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -128,10 +124,17 @@ public abstract class SetLocalTypeIns extends InstructionDefinition implements S
|
||||
}
|
||||
}
|
||||
|
||||
/*if (localData.getSetLocalUsages(localData.code.adr2pos(ins.getAddress())).isEmpty() && (value instanceof DuplicateItem)) {
|
||||
return;
|
||||
SetLocalAVM2Item result = new SetLocalAVM2Item(ins, localData.lineStartInstruction, regId, value);
|
||||
/*if (value.getNotCoercedNoDup() instanceof CompoundableBinaryOp) {
|
||||
CompoundableBinaryOp binaryOp = (CompoundableBinaryOp) value.getNotCoercedNoDup();
|
||||
if (binaryOp.getLeftSide() instanceof LocalRegAVM2Item) {
|
||||
LocalRegAVM2Item loc = (LocalRegAVM2Item) binaryOp.getLeftSide();
|
||||
if (loc.regIndex == regId) {
|
||||
result.setCompoundValue(binaryOp.getRightSide());
|
||||
result.setCompoundOperator(binaryOp.getOperator());
|
||||
}
|
||||
}
|
||||
}*/
|
||||
GraphTargetItem result = new SetLocalAVM2Item(ins, localData.lineStartInstruction, regId, value);
|
||||
|
||||
SetTypeIns.handleResult(value, stack, output, localData, result, regId);
|
||||
}
|
||||
|
||||
@@ -336,10 +336,10 @@ public class SetPropertyIns extends InstructionDefinition implements SetTypeIns
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
SetPropertyAVM2Item result = new SetPropertyAVM2Item(ins, localData.lineStartInstruction, obj, multiname, value);
|
||||
|
||||
/*if (value instanceof LocalRegAVM2Item) {
|
||||
/*
|
||||
if (value instanceof LocalRegAVM2Item) {
|
||||
LocalRegAVM2Item locVal = (LocalRegAVM2Item) value;
|
||||
if (multiname.name instanceof LocalRegAVM2Item) {
|
||||
LocalRegAVM2Item locName = (LocalRegAVM2Item) multiname.name;
|
||||
|
||||
@@ -267,4 +267,9 @@ public class CallAVM2Item extends AVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -109,4 +109,8 @@ public class CallMethodAVM2Item extends AVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -128,4 +128,8 @@ public class CallPropertyAVM2Item extends AVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -109,4 +109,8 @@ public class CallStaticAVM2Item extends AVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -120,4 +120,8 @@ public class CallSuperAVM2Item extends AVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -116,4 +116,8 @@ public class ConstructAVM2Item extends AVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -113,4 +113,8 @@ public class ConstructPropAVM2Item extends AVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -115,4 +115,8 @@ public class ConstructSuperAVM2Item extends AVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -76,4 +76,8 @@ public class DecLocalAVM2Item extends AVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -76,4 +76,8 @@ public class IncLocalAVM2Item extends AVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,6 +38,10 @@ public class InitPropertyAVM2Item extends AVM2Item implements SetTypeAVM2Item, A
|
||||
|
||||
public DeclarationAVM2Item declaration;
|
||||
|
||||
public GraphTargetItem compoundValue;
|
||||
|
||||
public String compoundOperator;
|
||||
|
||||
@Override
|
||||
public void visit(GraphTargetVisitorInterface visitor) {
|
||||
visitor.visit(object);
|
||||
@@ -64,6 +68,13 @@ public class InitPropertyAVM2Item extends AVM2Item implements SetTypeAVM2Item, A
|
||||
@Override
|
||||
public GraphTextWriter appendTo(GraphTextWriter writer, LocalData localData) throws InterruptedException {
|
||||
formatProperty(writer, object, propertyName, localData);
|
||||
|
||||
if (compoundOperator != null) {
|
||||
writer.append(" ");
|
||||
writer.append(compoundOperator);
|
||||
writer.append("= ");
|
||||
return compoundValue.toString(writer, localData);
|
||||
}
|
||||
writer.append(" = ");
|
||||
return value.toString(writer, localData);
|
||||
}
|
||||
@@ -117,4 +128,23 @@ public class InitPropertyAVM2Item extends AVM2Item implements SetTypeAVM2Item, A
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GraphTargetItem getCompoundValue() {
|
||||
return compoundValue;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCompoundValue(GraphTargetItem value) {
|
||||
this.compoundValue = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCompoundOperator(String operator) {
|
||||
compoundOperator = operator;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCompoundOperator() {
|
||||
return compoundOperator;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -97,4 +97,8 @@ public class NameValuePair extends AVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return name.hasSideEffect() || value.hasSideEffect();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -136,4 +136,14 @@ public class NewArrayAVM2Item extends AVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
for (GraphTargetItem v : values) {
|
||||
if (v.hasSideEffect()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -155,4 +155,14 @@ public class NewObjectAVM2Item extends AVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
for (NameValuePair p : pairs) {
|
||||
if (p.hasSideEffect()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -83,4 +83,9 @@ public class ReturnValueAVM2Item extends AVM2Item implements ExitItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -78,4 +78,9 @@ public class ReturnVoidAVM2Item extends AVM2Item implements ExitItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -41,6 +41,10 @@ public class SetLocalAVM2Item extends AVM2Item implements SetTypeAVM2Item, Assig
|
||||
|
||||
public DeclarationAVM2Item declaration;
|
||||
|
||||
public GraphTargetItem compoundValue;
|
||||
|
||||
public String compoundOperator;
|
||||
|
||||
@Override
|
||||
public DeclarationAVM2Item getDeclaration() {
|
||||
return declaration;
|
||||
@@ -60,7 +64,14 @@ public class SetLocalAVM2Item extends AVM2Item implements SetTypeAVM2Item, Assig
|
||||
public GraphTextWriter appendTo(GraphTextWriter writer, LocalData localData) throws InterruptedException {
|
||||
String localName = localRegName(localData.localRegNames, regIndex);
|
||||
getSrcData().localName = localName;
|
||||
writer.append(localName).append(" = ");
|
||||
writer.append(localName);
|
||||
if (compoundOperator != null) {
|
||||
writer.append(" ");
|
||||
writer.append(compoundOperator);
|
||||
writer.append("= ");
|
||||
return compoundValue.toString(writer, localData);
|
||||
}
|
||||
writer.append(" = ");
|
||||
if (declaration != null && !declaration.type.equals(TypeItem.UNBOUNDED) && (value instanceof ConvertAVM2Item)) {
|
||||
return value.value.toString(writer, localData);
|
||||
}
|
||||
@@ -167,4 +178,23 @@ public class SetLocalAVM2Item extends AVM2Item implements SetTypeAVM2Item, Assig
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GraphTargetItem getCompoundValue() {
|
||||
return compoundValue;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCompoundValue(GraphTargetItem value) {
|
||||
this.compoundValue = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCompoundOperator(String operator) {
|
||||
compoundOperator = operator;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCompoundOperator() {
|
||||
return compoundOperator;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -127,4 +127,24 @@ public class SetPropertyAVM2Item extends AVM2Item implements SetTypeAVM2Item, As
|
||||
public boolean hasReturnValue() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GraphTargetItem getCompoundValue() {
|
||||
return compoundValue;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCompoundValue(GraphTargetItem value) {
|
||||
this.compoundValue = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCompoundOperator(String operator) {
|
||||
compoundOperator = operator;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCompoundOperator() {
|
||||
return compoundOperator;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -44,6 +44,10 @@ public class SetSlotAVM2Item extends AVM2Item implements SetTypeAVM2Item, Assign
|
||||
|
||||
public int slotIndex;
|
||||
|
||||
public GraphTargetItem compoundValue;
|
||||
|
||||
public String compoundOperator;
|
||||
|
||||
@Override
|
||||
public void visit(GraphTargetVisitorInterface visitor) {
|
||||
visitor.visit(scope);
|
||||
@@ -81,6 +85,13 @@ public class SetSlotAVM2Item extends AVM2Item implements SetTypeAVM2Item, Assign
|
||||
return writer;
|
||||
}
|
||||
getName(writer, localData);
|
||||
|
||||
if (compoundOperator != null) {
|
||||
writer.append(" ");
|
||||
writer.append(compoundOperator);
|
||||
writer.append("= ");
|
||||
return compoundValue.toString(writer, localData);
|
||||
}
|
||||
writer.append(" = ");
|
||||
if (declaration != null && !declaration.type.equals(TypeItem.UNBOUNDED) && (value instanceof ConvertAVM2Item)) {
|
||||
return value.value.toString(writer, localData);
|
||||
@@ -157,4 +168,23 @@ public class SetSlotAVM2Item extends AVM2Item implements SetTypeAVM2Item, Assign
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GraphTargetItem getCompoundValue() {
|
||||
return compoundValue;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCompoundValue(GraphTargetItem value) {
|
||||
this.compoundValue = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCompoundOperator(String operator) {
|
||||
compoundOperator = operator;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCompoundOperator() {
|
||||
return compoundOperator;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -38,6 +38,10 @@ public class SetSuperAVM2Item extends AVM2Item implements SetTypeAVM2Item {
|
||||
|
||||
public DeclarationAVM2Item declaration;
|
||||
|
||||
public GraphTargetItem compoundValue;
|
||||
|
||||
public String compoundOperator;
|
||||
|
||||
@Override
|
||||
public DeclarationAVM2Item getDeclaration() {
|
||||
return declaration;
|
||||
@@ -78,6 +82,12 @@ public class SetSuperAVM2Item extends AVM2Item implements SetTypeAVM2Item {
|
||||
}
|
||||
writer.append("super.");
|
||||
propertyName.toString(writer, localData);
|
||||
if (compoundOperator != null) {
|
||||
writer.append(" ");
|
||||
writer.append(compoundOperator);
|
||||
writer.append("= ");
|
||||
return compoundValue.toString(writer, localData);
|
||||
}
|
||||
writer.append(" = ");
|
||||
return value.toString(writer, localData);
|
||||
}
|
||||
@@ -139,4 +149,23 @@ public class SetSuperAVM2Item extends AVM2Item implements SetTypeAVM2Item {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GraphTargetItem getCompoundValue() {
|
||||
return compoundValue;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCompoundValue(GraphTargetItem value) {
|
||||
this.compoundValue = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setCompoundOperator(String operator) {
|
||||
compoundOperator = operator;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getCompoundOperator() {
|
||||
return compoundOperator;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,7 +12,8 @@
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library.
|
||||
* License along with this library.
|
||||
*/
|
||||
package com.jpexs.decompiler.flash.abc.avm2.model;
|
||||
|
||||
import com.jpexs.decompiler.flash.abc.avm2.model.clauses.DeclarationAVM2Item;
|
||||
@@ -31,4 +32,12 @@ public interface SetTypeAVM2Item {
|
||||
public DeclarationAVM2Item getDeclaration();
|
||||
|
||||
public void setDeclaration(DeclarationAVM2Item dec);
|
||||
|
||||
public GraphTargetItem getCompoundValue();
|
||||
|
||||
public void setCompoundValue(GraphTargetItem value);
|
||||
|
||||
public void setCompoundOperator(String operator);
|
||||
|
||||
public String getCompoundOperator();
|
||||
}
|
||||
|
||||
@@ -83,4 +83,9 @@ public class ThrowAVM2Item extends AVM2Item implements ExitItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -87,4 +87,10 @@ public class CallActionItem extends ActionItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -149,4 +149,10 @@ public class CallFunctionActionItem extends ActionItem {
|
||||
public boolean hasReturnValue() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -170,4 +170,8 @@ public class CallMethodActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -85,4 +85,9 @@ public class CloneSpriteActionItem extends ActionItem {
|
||||
public boolean hasReturnValue() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -151,4 +151,9 @@ public class DefineLocalActionItem extends ActionItem implements SetTypeActionIt
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -127,4 +127,10 @@ public class DeleteActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -100,4 +100,8 @@ public class EnumerateActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -122,4 +122,8 @@ public class FSCommand2ActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -91,4 +91,8 @@ public class FSCommandActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -411,5 +411,9 @@ public class FunctionActionItem extends ActionItem {
|
||||
return false; //function actually returns itself, but here is false for generator to not add Pop
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true; //??
|
||||
}
|
||||
//What about hashcode and equals? Probably not.
|
||||
}
|
||||
|
||||
@@ -124,4 +124,8 @@ public class GetURL2ActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -93,4 +93,8 @@ public class GetURLActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -130,4 +130,8 @@ public class GotoFrame2ActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -82,4 +82,8 @@ public class GotoFrameActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -84,4 +84,8 @@ public class GotoLabelActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -103,4 +103,15 @@ public class InitArrayActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
for (GraphTargetItem v : values) {
|
||||
if (v.hasSideEffect()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -132,4 +132,19 @@ public class InitObjectActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
for (GraphTargetItem n : names) {
|
||||
if (n.hasSideEffect()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
for (GraphTargetItem v : values) {
|
||||
if (v.hasSideEffect()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -114,4 +114,8 @@ public class LoadMovieActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -123,4 +123,8 @@ public class LoadMovieNumActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -114,4 +114,8 @@ public class LoadVariablesActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -123,4 +123,8 @@ public class LoadVariablesNumActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -149,4 +149,9 @@ public class NewMethodActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -115,4 +115,9 @@ public class NewObjectActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -71,4 +71,9 @@ public class NextFrameActionItem extends ActionItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,4 +71,9 @@ public class PlayActionItem extends ActionItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,4 +71,9 @@ public class PrevFrameActionItem extends ActionItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -103,4 +103,8 @@ public class PrintActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -103,4 +103,8 @@ public class PrintAsBitmapActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -109,4 +109,8 @@ public class PrintAsBitmapNumActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -109,4 +109,8 @@ public class PrintNumActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -87,4 +87,9 @@ public class RemoveSpriteActionItem extends ActionItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -120,4 +120,9 @@ public class ReturnActionItem extends ActionItem implements ExitItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -91,4 +91,8 @@ public class SetTarget2ActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -81,4 +81,8 @@ public class SetTargetActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -167,4 +167,8 @@ public class StartDragActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,4 +71,9 @@ public class StopActionItem extends ActionItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,4 +71,9 @@ public class StopAllSoundsActionItem extends ActionItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,4 +71,9 @@ public class StopDragActionItem extends ActionItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -162,4 +162,8 @@ public class StoreRegisterActionItem extends ActionItem implements SetTypeAction
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -65,4 +65,9 @@ public class StrictModeActionItem extends ActionItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -87,4 +87,9 @@ public class TargetPathActionItem extends ActionItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -84,4 +84,9 @@ public class ThrowActionItem extends ActionItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,4 +71,9 @@ public class ToggleHighQualityActionItem extends ActionItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -87,4 +87,9 @@ public class TraceActionItem extends ActionItem {
|
||||
int hash = 3;
|
||||
return hash;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -91,4 +91,8 @@ public class UnLoadMovieActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -100,4 +100,8 @@ public class UnLoadMovieNumActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -70,4 +70,8 @@ public class UnsupportedActionItem extends ActionItem {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasSideEffect() {
|
||||
return true; //??
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user