From 8d1e77ef29808284d0f59b9200427fbdd2d7e4cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jindra=20Pet=C5=99=C3=ADk?= Date: Wed, 7 Aug 2024 11:38:26 +0200 Subject: [PATCH] More documentation. --- .../instructions/alchemy/AlchemyTypeIns.java | 2 +- .../avm2/instructions/alchemy/Lf32Ins.java | 2 +- .../avm2/instructions/alchemy/Lf64Ins.java | 2 +- .../avm2/instructions/alchemy/Li16Ins.java | 2 +- .../avm2/instructions/alchemy/Li32Ins.java | 2 +- .../abc/avm2/instructions/alchemy/Li8Ins.java | 2 +- .../avm2/instructions/alchemy/Sf32Ins.java | 2 +- .../avm2/instructions/alchemy/Sf64Ins.java | 2 +- .../avm2/instructions/alchemy/Si16Ins.java | 2 +- .../avm2/instructions/alchemy/Si32Ins.java | 2 +- .../abc/avm2/instructions/alchemy/Si8Ins.java | 2 +- .../avm2/instructions/alchemy/Sxi16Ins.java | 2 +- .../avm2/instructions/alchemy/Sxi1Ins.java | 2 +- .../avm2/instructions/alchemy/Sxi8Ins.java | 2 +- .../avm2/instructions/arithmetic/AddIIns.java | 3 +- .../avm2/instructions/arithmetic/AddIns.java | 3 +- .../arithmetic/DecrementIIns.java | 3 +- .../instructions/arithmetic/DecrementIns.java | 3 +- .../instructions/arithmetic/DivideIns.java | 3 +- .../arithmetic/IncrementIIns.java | 2 +- .../instructions/arithmetic/IncrementIns.java | 2 +- .../instructions/arithmetic/ModuloIns.java | 2 +- .../instructions/arithmetic/MultiplyIIns.java | 2 +- .../instructions/arithmetic/MultiplyIns.java | 2 +- .../instructions/arithmetic/NegateIIns.java | 2 +- .../instructions/arithmetic/NegateIns.java | 2 +- .../avm2/instructions/arithmetic/NotIns.java | 2 +- .../instructions/arithmetic/SubtractIIns.java | 2 +- .../instructions/arithmetic/SubtractIns.java | 2 +- .../avm2/instructions/bitwise/BitAndIns.java | 3 +- .../avm2/instructions/bitwise/BitNotIns.java | 3 +- .../avm2/instructions/bitwise/BitOrIns.java | 3 +- .../avm2/instructions/bitwise/BitXorIns.java | 3 +- .../avm2/instructions/bitwise/LShiftIns.java | 2 +- .../avm2/instructions/bitwise/RShiftIns.java | 2 +- .../avm2/instructions/bitwise/URShiftIns.java | 2 +- .../instructions/comparison/EqualsIns.java | 3 +- .../comparison/GreaterEqualsIns.java | 2 +- .../comparison/GreaterThanIns.java | 2 +- .../comparison/LessEqualsIns.java | 2 +- .../instructions/comparison/LessThanIns.java | 2 +- .../comparison/StrictEqualsIns.java | 2 +- .../construction/ConstructIns.java | 14 +- .../construction/ConstructPropIns.java | 10 +- .../construction/ConstructSuperIns.java | 3 +- .../construction/NewActivationIns.java | 2 +- .../construction/NewArrayIns.java | 2 +- .../construction/NewCatchIns.java | 2 +- .../construction/NewClassIns.java | 2 +- .../construction/NewFunctionIns.java | 2 +- .../construction/NewObjectIns.java | 2 +- .../avm2/instructions/debug/DebugFileIns.java | 2 +- .../abc/avm2/instructions/debug/DebugIns.java | 2 +- .../avm2/instructions/debug/DebugLineIns.java | 2 +- .../avm2/instructions/executing/CallIns.java | 3 +- .../instructions/executing/CallMethodIns.java | 3 +- .../executing/CallPropLexIns.java | 3 +- .../executing/CallPropVoidIns.java | 3 +- .../executing/CallPropertyIns.java | 3 +- .../instructions/executing/CallStaticIns.java | 3 +- .../instructions/executing/CallSuperIns.java | 3 +- .../executing/CallSuperVoidIns.java | 3 +- .../abc/avm2/instructions/jumps/IfEqIns.java | 2 +- .../avm2/instructions/jumps/IfFalseIns.java | 2 +- .../abc/avm2/instructions/jumps/IfGeIns.java | 2 +- .../abc/avm2/instructions/jumps/IfGtIns.java | 2 +- .../abc/avm2/instructions/jumps/IfLeIns.java | 2 +- .../abc/avm2/instructions/jumps/IfLtIns.java | 2 +- .../abc/avm2/instructions/jumps/IfNGeIns.java | 2 +- .../abc/avm2/instructions/jumps/IfNGtIns.java | 2 +- .../abc/avm2/instructions/jumps/IfNLeIns.java | 2 +- .../abc/avm2/instructions/jumps/IfNLtIns.java | 2 +- .../abc/avm2/instructions/jumps/IfNeIns.java | 2 +- .../instructions/jumps/IfStrictEqIns.java | 2 +- .../instructions/jumps/IfStrictNeIns.java | 2 +- .../avm2/instructions/jumps/IfTrueIns.java | 2 +- .../abc/avm2/instructions/jumps/JumpIns.java | 2 +- .../instructions/jumps/LookupSwitchIns.java | 2 +- .../instructions/localregs/DecLocalIIns.java | 3 +- .../instructions/localregs/DecLocalIns.java | 3 +- .../instructions/localregs/GetLocal0Ins.java | 2 +- .../instructions/localregs/GetLocal1Ins.java | 2 +- .../instructions/localregs/GetLocal2Ins.java | 2 +- .../instructions/localregs/GetLocal3Ins.java | 2 +- .../instructions/localregs/GetLocalIns.java | 2 +- .../localregs/GetLocalTypeIns.java | 2 +- .../instructions/localregs/IncLocalIIns.java | 2 +- .../instructions/localregs/IncLocalIns.java | 2 +- .../avm2/instructions/localregs/KillIns.java | 2 +- .../instructions/localregs/SetLocal0Ins.java | 2 +- .../instructions/localregs/SetLocal1Ins.java | 2 +- .../instructions/localregs/SetLocal2Ins.java | 2 +- .../instructions/localregs/SetLocal3Ins.java | 2 +- .../instructions/localregs/SetLocalIns.java | 2 +- .../localregs/SetLocalTypeIns.java | 2 +- .../abc/avm2/instructions/other/BkptIns.java | 2 +- .../avm2/instructions/other/BkptLineIns.java | 2 +- .../instructions/other/DeletePropertyIns.java | 3 +- .../avm2/instructions/other/FindDefIns.java | 3 +- .../instructions/other/FindPropertyIns.java | 3 +- .../other/FindPropertyStrictIns.java | 3 +- .../instructions/other/GetDescendantsIns.java | 2 +- .../instructions/other/GetGlobalScopeIns.java | 2 +- .../instructions/other/GetGlobalSlotIns.java | 2 +- .../avm2/instructions/other/GetLexIns.java | 2 +- .../instructions/other/GetOuterScopeIns.java | 2 +- .../instructions/other/GetPropertyIns.java | 2 +- .../instructions/other/GetScopeObjectIns.java | 2 +- .../avm2/instructions/other/GetSlotIns.java | 2 +- .../avm2/instructions/other/GetSuperIns.java | 2 +- .../avm2/instructions/other/HasNext2Ins.java | 2 +- .../avm2/instructions/other/HasNextIns.java | 2 +- .../abc/avm2/instructions/other/InIns.java | 2 +- .../instructions/other/InitPropertyIns.java | 2 +- .../abc/avm2/instructions/other/LabelIns.java | 2 +- .../avm2/instructions/other/NextNameIns.java | 2 +- .../avm2/instructions/other/NextValueIns.java | 2 +- .../abc/avm2/instructions/other/NopIns.java | 2 +- .../instructions/other/ReturnValueIns.java | 2 +- .../instructions/other/ReturnVoidIns.java | 2 +- .../instructions/other/SetGlobalSlotIns.java | 2 +- .../instructions/other/SetPropertyIns.java | 2 +- .../avm2/instructions/other/SetSlotIns.java | 2 +- .../avm2/instructions/other/SetSuperIns.java | 2 +- .../abc/avm2/instructions/other/ThrowIns.java | 2 +- .../avm2/instructions/other/TimestampIns.java | 2 +- .../other/decimalsupport/AddPIns.java | 2 +- .../other/decimalsupport/ConvertMIns.java | 2 +- .../other/decimalsupport/ConvertMPIns.java | 2 +- .../other/decimalsupport/DecLocalPIns.java | 2 +- .../other/decimalsupport/DecrementPIns.java | 2 +- .../other/decimalsupport/DividePIns.java | 2 +- .../other/decimalsupport/IncLocalPIns.java | 2 +- .../other/decimalsupport/IncrementPIns.java | 2 +- .../other/decimalsupport/ModuloPIns.java | 2 +- .../other/decimalsupport/MultiplyPIns.java | 2 +- .../other/decimalsupport/NegatePIns.java | 2 +- .../other/decimalsupport/PushDNanIns.java | 2 +- .../other/decimalsupport/PushDecimalIns.java | 2 +- .../other/decimalsupport/SubtractPIns.java | 2 +- .../other/deprecated/CoerceBIns.java | 2 +- .../other/deprecated/CoerceDIns.java | 2 +- .../other/deprecated/CoerceIIns.java | 2 +- .../other/deprecated/CoerceUIns.java | 2 +- .../other/floatsupport/ConvertF4Ins.java | 2 +- .../other/floatsupport/ConvertFIns.java | 2 +- .../other/floatsupport/Lf32x4Ins.java | 2 +- .../other/floatsupport/PushFloat4Ins.java | 2 +- .../other/floatsupport/PushFloatIns.java | 2 +- .../other/floatsupport/Sf32x4Ins.java | 2 +- .../other/floatsupport/UnPlusIns.java | 2 +- .../other/unknown/AbsJumpIns.java | 2 +- .../instructions/other/unknown/AddDIns.java | 2 +- .../instructions/other/unknown/AllocIns.java | 2 +- .../other/unknown/CallInterfaceIns.java | 2 +- .../other/unknown/CallSuperIdIns.java | 2 +- .../other/unknown/CodeGenOpIns.java | 2 +- .../instructions/other/unknown/ConcatIns.java | 2 +- .../instructions/other/unknown/DecodeIns.java | 2 +- .../other/unknown/DelDescendantsIns.java | 2 +- .../other/unknown/DeletePropertyLateIns.java | 2 +- .../other/unknown/DoubleToAtomIns.java | 2 +- .../other/unknown/FindPropGlobalIns.java | 2 +- .../unknown/FindPropGlobalStrictIns.java | 2 +- .../other/unknown/GetPropertyLateIns.java | 2 +- .../other/unknown/InvalidIns.java | 2 +- .../instructions/other/unknown/MarkIns.java | 2 +- .../other/unknown/PrologueIns.java | 2 +- .../other/unknown/PushConstantIns.java | 2 +- .../other/unknown/SendEnterIns.java | 2 +- .../other/unknown/SetPropertyLateIns.java | 2 +- .../instructions/other/unknown/SweepIns.java | 2 +- .../other/unknown/VerifyOpIns.java | 2 +- .../other/unknown/VerifyPassIns.java | 2 +- .../instructions/other/unknown/WbIns.java | 2 +- .../abc/avm2/instructions/stack/DupIns.java | 3 +- .../abc/avm2/instructions/stack/PopIns.java | 2 +- .../avm2/instructions/stack/PopScopeIns.java | 2 +- .../avm2/instructions/stack/PushByteIns.java | 2 +- .../instructions/stack/PushDoubleIns.java | 2 +- .../avm2/instructions/stack/PushFalseIns.java | 2 +- .../avm2/instructions/stack/PushIntIns.java | 2 +- .../instructions/stack/PushNamespaceIns.java | 2 +- .../avm2/instructions/stack/PushNanIns.java | 2 +- .../avm2/instructions/stack/PushNullIns.java | 2 +- .../avm2/instructions/stack/PushScopeIns.java | 2 +- .../avm2/instructions/stack/PushShortIns.java | 2 +- .../instructions/stack/PushStringIns.java | 2 +- .../avm2/instructions/stack/PushTrueIns.java | 2 +- .../avm2/instructions/stack/PushUIntIns.java | 2 +- .../instructions/stack/PushUndefinedIns.java | 2 +- .../avm2/instructions/stack/PushWithIns.java | 2 +- .../abc/avm2/instructions/stack/SwapIns.java | 2 +- .../avm2/instructions/types/ApplyTypeIns.java | 3 +- .../avm2/instructions/types/AsTypeIns.java | 3 +- .../instructions/types/AsTypeLateIns.java | 3 +- .../avm2/instructions/types/CoerceAIns.java | 3 +- .../avm2/instructions/types/CoerceIns.java | 3 +- .../avm2/instructions/types/CoerceOIns.java | 2 +- .../types/CoerceOrConvertTypeIns.java | 2 +- .../avm2/instructions/types/CoerceSIns.java | 3 +- .../avm2/instructions/types/ConvertBIns.java | 3 +- .../avm2/instructions/types/ConvertDIns.java | 3 +- .../avm2/instructions/types/ConvertIIns.java | 3 +- .../avm2/instructions/types/ConvertOIns.java | 3 +- .../avm2/instructions/types/ConvertSIns.java | 3 +- .../avm2/instructions/types/ConvertUIns.java | 3 +- .../instructions/types/InstanceOfIns.java | 2 +- .../avm2/instructions/types/IsTypeIns.java | 2 +- .../instructions/types/IsTypeLateIns.java | 2 +- .../avm2/instructions/types/TypeOfIns.java | 2 +- .../avm2/instructions/xml/CheckFilterIns.java | 3 +- .../abc/avm2/instructions/xml/DXNSIns.java | 3 +- .../avm2/instructions/xml/DXNSLateIns.java | 3 +- .../avm2/instructions/xml/EscXAttrIns.java | 3 +- .../avm2/instructions/xml/EscXElemIns.java | 3 +- .../flash/abc/avm2/model/AVM2Item.java | 3 +- .../abc/avm2/model/AlchemyLoadAVM2Item.java | 11 +- .../avm2/model/AlchemySignExtendAVM2Item.java | 10 +- .../abc/avm2/model/AlchemyStoreAVM2Item.java | 10 +- .../abc/avm2/model/ApplyTypeAVM2Item.java | 10 +- .../flash/abc/avm2/model/BooleanAVM2Item.java | 9 +- .../flash/abc/avm2/model/CallAVM2Item.java | 10 +- .../abc/avm2/model/CallMethodAVM2Item.java | 3 +- .../abc/avm2/model/CallPropertyAVM2Item.java | 9 +- .../abc/avm2/model/CallStaticAVM2Item.java | 3 +- .../abc/avm2/model/CallSuperAVM2Item.java | 3 +- .../flash/abc/avm2/model/ClassAVM2Item.java | 2 +- .../flash/abc/avm2/model/CoerceAVM2Item.java | 10 +- .../abc/avm2/model/ConstructAVM2Item.java | 3 +- .../abc/avm2/model/ConstructPropAVM2Item.java | 3 +- .../avm2/model/ConstructSuperAVM2Item.java | 10 +- .../flash/abc/avm2/model/ConvertAVM2Item.java | 3 +- .../abc/avm2/model/DecLocalAVM2Item.java | 2 +- .../abc/avm2/model/DecrementAVM2Item.java | 3 +- .../abc/avm2/model/DefaultXMLNamespace.java | 10 +- .../abc/avm2/model/EscapeXAttrAVM2Item.java | 9 +- .../abc/avm2/model/EscapeXElemAVM2Item.java | 9 +- .../abc/avm2/model/FilteredCheckAVM2Item.java | 3 +- .../flash/abc/avm2/model/FindDefAVM2Item.java | 3 +- .../abc/avm2/model/FindPropertyAVM2Item.java | 10 +- .../abc/avm2/model/FloatValueAVM2Item.java | 9 +- .../abc/avm2/model/FullMultinameAVM2Item.java | 15 +- .../avm2/model/GetDescendantsAVM2Item.java | 10 +- .../flash/abc/avm2/model/GetLexAVM2Item.java | 2 +- .../abc/avm2/model/GetPropertyAVM2Item.java | 2 +- .../flash/abc/avm2/model/GetSlotAVM2Item.java | 2 +- .../abc/avm2/model/GetSuperAVM2Item.java | 2 +- .../flash/abc/avm2/model/GlobalAVM2Item.java | 2 +- .../flash/abc/avm2/model/HasNextAVM2Item.java | 2 +- .../flash/abc/avm2/model/InAVM2Item.java | 2 +- .../abc/avm2/model/IncLocalAVM2Item.java | 2 +- .../abc/avm2/model/IncrementAVM2Item.java | 2 +- .../abc/avm2/model/InitPropertyAVM2Item.java | 2 +- .../abc/avm2/model/InitVectorAVM2Item.java | 2 +- .../abc/avm2/model/IntegerValueAVM2Item.java | 2 +- .../abc/avm2/model/LocalRegAVM2Item.java | 2 +- .../abc/avm2/model/NameSpaceAVM2Item.java | 2 +- .../flash/abc/avm2/model/NameValuePair.java | 3 +- .../flash/abc/avm2/model/NanAVM2Item.java | 2 +- .../abc/avm2/model/NewActivationAVM2Item.java | 2 +- .../abc/avm2/model/NewArrayAVM2Item.java | 2 +- .../abc/avm2/model/NewFunctionAVM2Item.java | 2 +- .../abc/avm2/model/NextNameAVM2Item.java | 2 +- .../abc/avm2/model/NextValueAVM2Item.java | 2 +- .../flash/abc/avm2/model/NullAVM2Item.java | 2 +- .../abc/avm2/model/NumberValueAVM2Item.java | 2 +- .../abc/avm2/model/PostDecrementAVM2Item.java | 2 +- .../abc/avm2/model/PostIncrementAVM2Item.java | 2 +- .../flash/abc/avm2/model/RegExpAvm2Item.java | 2 +- .../abc/avm2/model/ReturnValueAVM2Item.java | 2 +- .../abc/avm2/model/ReturnVoidAVM2Item.java | 2 +- .../abc/avm2/model/SetLocalAVM2Item.java | 2 +- .../abc/avm2/model/SetPropertyAVM2Item.java | 2 +- .../flash/abc/avm2/model/SetSlotAVM2Item.java | 2 +- .../abc/avm2/model/SetSuperAVM2Item.java | 2 +- .../flash/abc/avm2/model/SetTypeAVM2Item.java | 34 +- .../flash/abc/avm2/model/StringAVM2Item.java | 2 +- .../flash/abc/avm2/model/ThisAVM2Item.java | 2 +- .../flash/abc/avm2/model/ThrowAVM2Item.java | 2 +- .../abc/avm2/model/UndefinedAVM2Item.java | 2 +- .../abc/avm2/model/UnparsedAVM2Item.java | 3 +- .../flash/abc/avm2/model/WithAVM2Item.java | 2 +- .../flash/abc/avm2/model/WithEndAVM2Item.java | 2 +- .../abc/avm2/model/WithObjectAVM2Item.java | 2 +- .../flash/abc/avm2/model/XMLAVM2Item.java | 2 +- .../model/clauses/AssignmentAVM2Item.java | 2 +- .../model/clauses/DeclarationAVM2Item.java | 10 +- .../avm2/model/clauses/ExceptionAVM2Item.java | 2 +- .../avm2/model/clauses/FilterAVM2Item.java | 2 +- .../avm2/model/clauses/ForEachInAVM2Item.java | 12 +- .../abc/avm2/model/clauses/ForInAVM2Item.java | 12 +- .../abc/avm2/model/clauses/TryAVM2Item.java | 2 +- .../avm2/model/operations/AddAVM2Item.java | 9 +- .../avm2/model/operations/AsTypeAVM2Item.java | 3 +- .../avm2/model/operations/BitAndAVM2Item.java | 9 +- .../avm2/model/operations/BitNotAVM2Item.java | 9 +- .../avm2/model/operations/BitOrAVM2Item.java | 9 +- .../avm2/model/operations/BitXorAVM2Item.java | 9 +- .../operations/BitwiseBinaryOpAVM2Item.java | 2 +- .../operations/DeletePropertyAVM2Item.java | 11 +- .../avm2/model/operations/DivideAVM2Item.java | 9 +- .../abc/avm2/model/operations/EqAVM2Item.java | 10 +- .../abc/avm2/model/operations/GeAVM2Item.java | 9 +- .../abc/avm2/model/operations/GtAVM2Item.java | 2 +- .../avm2/model/operations/IfCondition.java | 10 +- .../abc/avm2/model/operations/InAVM2Item.java | 2 +- .../model/operations/InstanceOfAVM2Item.java | 2 +- .../avm2/model/operations/IsTypeAVM2Item.java | 2 +- .../avm2/model/operations/LShiftAVM2Item.java | 2 +- .../abc/avm2/model/operations/LeAVM2Item.java | 2 +- .../abc/avm2/model/operations/LtAVM2Item.java | 2 +- .../avm2/model/operations/ModuloAVM2Item.java | 2 +- .../model/operations/MultiplyAVM2Item.java | 2 +- .../avm2/model/operations/NegAVM2Item.java | 2 +- .../avm2/model/operations/NeqAVM2Item.java | 2 +- .../operations/PreDecrementAVM2Item.java | 2 +- .../operations/PreIncrementAVM2Item.java | 2 +- .../avm2/model/operations/RShiftAVM2Item.java | 2 +- .../model/operations/StrictEqAVM2Item.java | 2 +- .../model/operations/StrictNeqAVM2Item.java | 2 +- .../model/operations/SubtractAVM2Item.java | 2 +- .../avm2/model/operations/TypeOfAVM2Item.java | 2 +- .../model/operations/URShiftAVM2Item.java | 2 +- .../abc/avm2/parser/AVM2ParseException.java | 2 +- .../abc/avm2/parser/pcode/ASM3Parser.java | 30 +- .../abc/avm2/parser/pcode/ParsedSymbol.java | 2 +- .../parser/script/AVM2SourceGenerator.java | 78 +---- .../abc/avm2/parser/script/AbcIndexing.java | 27 +- .../parser/script/ActionScript3Parser.java | 103 +----- .../parser/script/AssignableAVM2Item.java | 3 +- .../abc/avm2/parser/script/BreakJumpIns.java | 2 +- .../abc/avm2/parser/script/CallAVM2Item.java | 11 +- .../abc/avm2/parser/script/ClassAVM2Item.java | 9 +- .../abc/avm2/parser/script/ConstAVM2Item.java | 3 +- .../script/ConstructSomethingAVM2Item.java | 9 +- .../avm2/parser/script/ContinueJumpIns.java | 2 +- .../script/ExceptionMarkAVM2Instruction.java | 2 +- .../avm2/parser/script/ExceptionMarkIns.java | 2 +- .../avm2/parser/script/FinallyJumpIns.java | 2 +- .../avm2/parser/script/FunctionAVM2Item.java | 10 +- .../avm2/parser/script/GetterAVM2Item.java | 2 +- .../parser/script/ImportedSlotConstItem.java | 2 +- .../abc/avm2/parser/script/IndexAVM2Item.java | 2 +- .../avm2/parser/script/InterfaceAVM2Item.java | 2 +- .../abc/avm2/parser/script/LexBufferer.java | 2 +- .../abc/avm2/parser/script/LexListener.java | 2 +- .../avm2/parser/script/MethodAVM2Item.java | 2 +- .../abc/avm2/parser/script/NameAVM2Item.java | 2 +- .../abc/avm2/parser/script/NamespaceItem.java | 2 +- .../parser/script/NamespacedAVM2Item.java | 2 +- .../avm2/parser/script/PackageAVM2Item.java | 2 +- .../abc/avm2/parser/script/ParsedSymbol.java | 2 +- .../avm2/parser/script/PropertyAVM2Item.java | 2 +- .../avm2/parser/script/SetterAVM2Item.java | 2 +- .../abc/avm2/parser/script/SlotAVM2Item.java | 2 +- .../abc/avm2/parser/script/SymbolGroup.java | 2 +- .../abc/avm2/parser/script/SymbolType.java | 2 +- .../parser/script/UnresolvedAVM2Item.java | 3 +- .../abc/avm2/parser/script/XMLAVM2Item.java | 2 +- .../avm2/parser/script/XMLFilterAVM2Item.java | 2 +- .../flash/abc/avm2/parser/script/todo.txt | 3 - .../MethodInfoParseException.java | 2 +- .../methodinfoparser/MethodInfoParser.java | 2 +- .../abc/methodinfoparser/ParsedSymbol.java | 2 +- .../flash/abc/types/ABCException.java | 3 +- .../flash/abc/types/AssignedValue.java | 17 +- .../decompiler/flash/abc/types/ClassInfo.java | 38 +- .../flash/abc/types/ConvertData.java | 3 +- .../decompiler/flash/abc/types/Decimal.java | 2 +- .../decompiler/flash/abc/types/Float4.java | 4 + .../flash/abc/types/InstanceInfo.java | 103 +++++- .../flash/abc/types/MetadataInfo.java | 29 +- .../flash/abc/types/MethodBody.java | 229 +++++++++++- .../flash/abc/types/MethodInfo.java | 10 +- .../decompiler/flash/abc/types/Multiname.java | 308 ++++++++++++++++- .../decompiler/flash/abc/types/Namespace.java | 108 +++++- .../flash/abc/types/NamespaceSet.java | 2 +- .../flash/abc/types/ScriptInfo.java | 94 ++++- .../decompiler/flash/abc/types/ValueKind.java | 141 ++++++-- .../flash/abc/types/traits/Trait.java | 327 +++++++++++++++++- .../flash/abc/types/traits/TraitClass.java | 157 ++++++++- .../flash/abc/types/traits/TraitFunction.java | 137 +++++++- .../types/traits/TraitMethodGetterSetter.java | 146 +++++++- .../abc/types/traits/TraitSlotConst.java | 159 ++++++++- .../flash/abc/types/traits/TraitType.java | 7 +- .../flash/abc/types/traits/TraitWithSlot.java | 6 +- .../flash/abc/types/traits/Traits.java | 181 +++++++++- .../abc/usages/MultinameUsageDetector.java | 7 +- .../decompiler/flash/abc/usages/Usage.java | 14 +- .../flash/abc/usages/UsageDetector.java | 15 +- .../flash/abc/usages/UsagesFilter.java | 26 -- .../multinames/ClassNameMultinameUsage.java | 2 +- .../multinames/ConstVarMultinameUsage.java | 3 +- .../ConstVarNameMultinameUsage.java | 2 +- .../ConstVarTypeMultinameUsage.java | 2 +- .../usages/multinames/DefinitionUsage.java | 2 +- .../InsideClassMultinameUsageInterface.java | 14 +- .../multinames/MethodBodyMultinameUsage.java | 2 +- .../multinames/MethodMultinameUsage.java | 2 +- .../multinames/MethodNameMultinameUsage.java | 2 +- .../MethodParamsMultinameUsage.java | 2 +- .../MethodReturnTypeMultinameUsage.java | 2 +- .../abc/usages/multinames/MultinameUsage.java | 2 +- .../multinames/SuperClassMultinameUsage.java | 2 +- .../SuperInterfaceMultinameUsage.java | 2 +- .../multinames/TraitMultinameUsage.java | 2 +- .../multinames/TypeNameMultinameUsage.java | 2 +- .../flash/abc/usages/simple/ABCCleaner.java | 26 +- .../usages/simple/ABCSimpleUsageDetector.java | 28 +- .../flash/abc/usages/simple/ABCWalker.java | 11 +- 411 files changed, 2736 insertions(+), 981 deletions(-) delete mode 100644 libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/todo.txt delete mode 100644 libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/UsagesFilter.java diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/AlchemyTypeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/AlchemyTypeIns.java index 8e3e10eb7..4d8fa1e05 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/AlchemyTypeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/AlchemyTypeIns.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.instructions.alchemy; import com.jpexs.decompiler.graph.DottedChain; /** - * + * Alchemy instruction - for domain memory access. * @author JPEXS */ public interface AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Lf32Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Lf32Ins.java index 3b4523397..120e0c19d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Lf32Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Lf32Ins.java @@ -31,7 +31,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * lf32 instruction - Load 32-bit float from domain memory. * @author JPEXS */ public class Lf32Ins extends InstructionDefinition implements AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Lf64Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Lf64Ins.java index 03ae1a211..3e136f95c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Lf64Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Lf64Ins.java @@ -31,7 +31,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * lf64 instruction - Load 64-bit float from domain memory. * @author JPEXS */ public class Lf64Ins extends InstructionDefinition implements AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Li16Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Li16Ins.java index 2f852314c..0c990cc88 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Li16Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Li16Ins.java @@ -31,7 +31,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * li16 instruction - Load 16-bit integer from domain memory. * @author JPEXS */ public class Li16Ins extends InstructionDefinition implements AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Li32Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Li32Ins.java index 094503c4b..dd468a329 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Li32Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Li32Ins.java @@ -31,7 +31,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * li32 instruction - Load 32-bit integer from domain memory. * @author JPEXS */ public class Li32Ins extends InstructionDefinition implements AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Li8Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Li8Ins.java index 1206de73f..aced3ae27 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Li8Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Li8Ins.java @@ -31,7 +31,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * li8 instruction - Load 8-bit integer from domain memory. * @author JPEXS */ public class Li8Ins extends InstructionDefinition implements AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sf32Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sf32Ins.java index b0d8b1b4e..cfc400286 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sf32Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sf32Ins.java @@ -31,7 +31,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * sf32 instruction - Store 32-bit float to domain memory. * @author JPEXS */ public class Sf32Ins extends InstructionDefinition implements AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sf64Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sf64Ins.java index 807028718..bc5a44bc3 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sf64Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sf64Ins.java @@ -31,7 +31,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * sf64 instruction - Store 64-bit float to domain memory. * @author JPEXS */ public class Sf64Ins extends InstructionDefinition implements AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Si16Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Si16Ins.java index 14fd17ea8..400812521 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Si16Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Si16Ins.java @@ -31,7 +31,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * si16 instruction - Store 16-bit integer to domain memory. * @author JPEXS */ public class Si16Ins extends InstructionDefinition implements AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Si32Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Si32Ins.java index f899b414a..36f2d3280 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Si32Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Si32Ins.java @@ -31,7 +31,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * si32 instruction - Store 32-bit integer to domain memory. * @author JPEXS */ public class Si32Ins extends InstructionDefinition implements AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Si8Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Si8Ins.java index 987f14169..6e6010c76 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Si8Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Si8Ins.java @@ -31,7 +31,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * si8 instruction - Store 8-bit integer to domain memory. * @author JPEXS */ public class Si8Ins extends InstructionDefinition implements AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sxi16Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sxi16Ins.java index 68ec9884c..16cb74754 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sxi16Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sxi16Ins.java @@ -30,7 +30,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * sxi16 instruction - Sign extend 16-bit integer to 32-bit integer. * @author JPEXS */ public class Sxi16Ins extends InstructionDefinition implements AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sxi1Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sxi1Ins.java index 3c60fa172..c93ca5ee6 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sxi1Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sxi1Ins.java @@ -30,7 +30,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * sxi1 instruction - Sign extend 1-bit integer to 32-bit integer. * @author JPEXS */ public class Sxi1Ins extends InstructionDefinition implements AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sxi8Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sxi8Ins.java index 112283e7d..5611192cf 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sxi8Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/alchemy/Sxi8Ins.java @@ -30,7 +30,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * sxi8 instruction - Sign extend 8-bit integer to 32-bit integer. * @author JPEXS */ public class Sxi8Ins extends InstructionDefinition implements AlchemyTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/AddIIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/AddIIns.java index 7360a7214..07b24b813 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/AddIIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/AddIIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.operations.AddAVM2Item; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * add_i instruction - Add two integers. * @author JPEXS */ public class AddIIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/AddIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/AddIns.java index 657f94873..874c3d598 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/AddIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/AddIns.java @@ -27,10 +27,11 @@ import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.flash.ecma.EcmaType; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * add instruction - Add two values. * @author JPEXS */ public class AddIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/DecrementIIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/DecrementIIns.java index 6c7877455..56cf392d7 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/DecrementIIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/DecrementIIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.DecrementAVM2Item; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * decrement_i instruction - Decrement an integer. * @author JPEXS */ public class DecrementIIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/DecrementIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/DecrementIns.java index bfec84d67..6ad7c5be0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/DecrementIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/DecrementIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.DecrementAVM2Item; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * decrement instruction - Decrement a number. * @author JPEXS */ public class DecrementIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/DivideIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/DivideIns.java index 0ae6cc461..6e95c80c9 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/DivideIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/DivideIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.operations.DivideAVM2Item; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * divide instruction - Divide two values. * @author JPEXS */ public class DivideIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/IncrementIIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/IncrementIIns.java index 175f3d8c9..3eb1f4933 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/IncrementIIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/IncrementIIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * increment_i instruction - Increment an integer. * @author JPEXS */ public class IncrementIIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/IncrementIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/IncrementIns.java index 3ba5aabb4..79cb55059 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/IncrementIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/IncrementIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * increment instruction - Increment a number. * @author JPEXS */ public class IncrementIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/ModuloIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/ModuloIns.java index 81f4f0387..fa8138f69 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/ModuloIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/ModuloIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * modulo instruction - Modulo operation. * @author JPEXS */ public class ModuloIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/MultiplyIIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/MultiplyIIns.java index 226b87419..6cf1ec91d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/MultiplyIIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/MultiplyIIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * multiply_i instruction - Multiply two integers. * @author JPEXS */ public class MultiplyIIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/MultiplyIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/MultiplyIns.java index f163c8346..55eede162 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/MultiplyIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/MultiplyIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * multiply instruction - Multiply two numbers. * @author JPEXS */ public class MultiplyIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/NegateIIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/NegateIIns.java index 72d52400d..b242fc06a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/NegateIIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/NegateIIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * negate_i instruction - Negate an integer. * @author JPEXS */ public class NegateIIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/NegateIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/NegateIns.java index e576678a2..2ba044603 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/NegateIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/NegateIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * negate instruction - Negate a number. * @author JPEXS */ public class NegateIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/NotIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/NotIns.java index fd76ef59b..189b99ff2 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/NotIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/NotIns.java @@ -28,7 +28,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * not instruction - Negate a boolean. * @author JPEXS */ public class NotIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/SubtractIIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/SubtractIIns.java index bda530138..1524ab83d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/SubtractIIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/SubtractIIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * subtract_i instruction - Subtract two integers. * @author JPEXS */ public class SubtractIIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/SubtractIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/SubtractIns.java index d225b5c38..d2a00c619 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/SubtractIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/arithmetic/SubtractIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * subtract instruction - Subtract two numbers. * @author JPEXS */ public class SubtractIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitAndIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitAndIns.java index 0608ff185..c471c0299 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitAndIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitAndIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.operations.BitAndAVM2Item; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * bitand instruction - Bitwise AND. * @author JPEXS */ public class BitAndIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitNotIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitNotIns.java index ddf423222..321fec889 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitNotIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitNotIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.operations.BitNotAVM2Item; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * bitnot instruction - Bitwise NOT. * @author JPEXS */ public class BitNotIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitOrIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitOrIns.java index 4375e6cd2..e99662d65 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitOrIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitOrIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.operations.BitOrAVM2Item; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * bitor instruction - Bitwise OR. * @author JPEXS */ public class BitOrIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitXorIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitXorIns.java index 41d139662..63c0c0587 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitXorIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/BitXorIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.operations.BitXorAVM2Item; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * bitxor instruction - Bitwise XOR. * @author JPEXS */ public class BitXorIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/LShiftIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/LShiftIns.java index 8ab368137..2971d1b23 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/LShiftIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/LShiftIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * lshift instruction - Bitwise left shift. * @author JPEXS */ public class LShiftIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/RShiftIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/RShiftIns.java index 7c5812be0..ab9481c66 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/RShiftIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/RShiftIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * rshift instruction - Bitwise right shift. * @author JPEXS */ public class RShiftIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/URShiftIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/URShiftIns.java index c09e4651c..19331f494 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/URShiftIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/bitwise/URShiftIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * urshift instruction - Unsigned right bitwise shift. * @author JPEXS */ public class URShiftIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/EqualsIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/EqualsIns.java index 7502b0eba..2f55a8c3b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/EqualsIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/EqualsIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.operations.EqAVM2Item; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * equals instruction - Compare two values for equality. * @author JPEXS */ public class EqualsIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/GreaterEqualsIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/GreaterEqualsIns.java index 67ba94a27..d84b974d3 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/GreaterEqualsIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/GreaterEqualsIns.java @@ -30,7 +30,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * greaterequals instruction - Greater or equals. * @author JPEXS */ public class GreaterEqualsIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/GreaterThanIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/GreaterThanIns.java index b9e605dd8..8e50b2078 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/GreaterThanIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/GreaterThanIns.java @@ -30,7 +30,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * greaterthan instruction - Greater than. * @author JPEXS */ public class GreaterThanIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/LessEqualsIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/LessEqualsIns.java index 59532a489..7bef2bea3 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/LessEqualsIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/LessEqualsIns.java @@ -30,7 +30,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * lessequals instruction - Less or equals. * @author JPEXS */ public class LessEqualsIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/LessThanIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/LessThanIns.java index 8e177ddcb..14a627550 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/LessThanIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/LessThanIns.java @@ -30,7 +30,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * lessthan instruction - Less than. * @author JPEXS */ public class LessThanIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/StrictEqualsIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/StrictEqualsIns.java index fbac7f638..01b1f54b6 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/StrictEqualsIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/comparison/StrictEqualsIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * strictequals instruction - Compare two values for strict equality. * @author JPEXS */ public class StrictEqualsIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/ConstructIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/ConstructIns.java index ef306c055..7510e8736 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/ConstructIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/ConstructIns.java @@ -23,26 +23,18 @@ import com.jpexs.decompiler.flash.abc.avm2.AVM2ConstantPool; import com.jpexs.decompiler.flash.abc.avm2.LocalDataArea; 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.model.ConstructAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.EscapeXAttrAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.EscapeXElemAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.FindPropertyAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.FullMultinameAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.GetLexAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.GetPropertyAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.RegExpAvm2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.StringAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.XMLAVM2Item; +import com.jpexs.decompiler.flash.abc.avm2.model.*; import com.jpexs.decompiler.flash.abc.avm2.model.operations.AddAVM2Item; import com.jpexs.decompiler.flash.ecma.ObjectType; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.ArrayList; import java.util.HashMap; import java.util.List; /** - * + * construct instruction - Construct a new object. * @author JPEXS */ public class ConstructIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/ConstructPropIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/ConstructPropIns.java index 74b1d9015..075020517 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/ConstructPropIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/ConstructPropIns.java @@ -24,20 +24,16 @@ import com.jpexs.decompiler.flash.abc.avm2.LocalDataArea; 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.other.GetPropertyIns; -import com.jpexs.decompiler.flash.abc.avm2.model.ConstructPropAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.FindPropertyAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.FullMultinameAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.RegExpAvm2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.StringAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.XMLAVM2Item; +import com.jpexs.decompiler.flash.abc.avm2.model.*; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.helpers.Reference; + import java.util.ArrayList; import java.util.List; /** - * + * constructprop instruction - Construct a property. * @author JPEXS */ public class ConstructPropIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/ConstructSuperIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/ConstructSuperIns.java index 3c6dcd834..277a945f7 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/ConstructSuperIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/ConstructSuperIns.java @@ -26,11 +26,12 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; import com.jpexs.decompiler.flash.abc.avm2.model.ConstructSuperAVM2Item; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.ArrayList; import java.util.List; /** - * + *´constructsuper instruction - Construct an instance of the base class. * @author JPEXS */ public class ConstructSuperIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewActivationIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewActivationIns.java index d04526e3a..b377f7928 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewActivationIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewActivationIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * newactivation instruction - Create a new activation object. * @author JPEXS */ public class NewActivationIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewArrayIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewArrayIns.java index 0b82f3003..096c1a8fd 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewArrayIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewArrayIns.java @@ -34,7 +34,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * newarray instruction - Create a new array. * @author JPEXS */ public class NewArrayIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewCatchIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewCatchIns.java index c45324668..9b3637dc1 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewCatchIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewCatchIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * newcatch instruction - Create a new catch object. * @author JPEXS */ public class NewCatchIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewClassIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewClassIns.java index dd7766355..bccb1dabb 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewClassIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewClassIns.java @@ -31,7 +31,7 @@ import java.util.HashSet; import java.util.List; /** - * + * newclass instruction - Create a new class. * @author JPEXS */ public class NewClassIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewFunctionIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewFunctionIns.java index 3272ab4aa..707c6058a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewFunctionIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewFunctionIns.java @@ -28,7 +28,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * newfunction instruction - Create a new function object. * @author JPEXS */ public class NewFunctionIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewObjectIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewObjectIns.java index 9cea416a0..571fe3be1 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewObjectIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/construction/NewObjectIns.java @@ -35,7 +35,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * newobject instruction - Create a new object. * @author JPEXS */ public class NewObjectIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/debug/DebugFileIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/debug/DebugFileIns.java index 2e8487d0f..4fd1ae100 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/debug/DebugFileIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/debug/DebugFileIns.java @@ -23,7 +23,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * debugfile instruction - Set the current file for debugging. * @author JPEXS */ public class DebugFileIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/debug/DebugIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/debug/DebugIns.java index c9fa4bfce..cbb1b8955 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/debug/DebugIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/debug/DebugIns.java @@ -23,7 +23,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * debug instruction - Debug information. * @author JPEXS */ public class DebugIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/debug/DebugLineIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/debug/DebugLineIns.java index 019ceee51..dacb5c6dd 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/debug/DebugLineIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/debug/DebugLineIns.java @@ -23,7 +23,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * debugline instruction - Debug line number information. * @author JPEXS */ public class DebugLineIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallIns.java index e0ab1a294..bedc33bcb 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallIns.java @@ -31,11 +31,12 @@ import com.jpexs.decompiler.flash.ecma.NotCompileTime; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.decompiler.graph.model.DuplicateItem; + import java.util.ArrayList; import java.util.List; /** - * + * call instruction - Call a function. * @author JPEXS */ public class CallIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallMethodIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallMethodIns.java index 6d0846406..e9b1b4f34 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallMethodIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallMethodIns.java @@ -27,11 +27,12 @@ import com.jpexs.decompiler.flash.abc.avm2.model.CallMethodAVM2Item; import com.jpexs.decompiler.flash.ecma.NotCompileTime; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.ArrayList; import java.util.List; /** - * + * callmethod instruction - Call a method. * @author JPEXS */ public class CallMethodIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallPropLexIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallPropLexIns.java index efb0dd792..830765c80 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallPropLexIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallPropLexIns.java @@ -28,11 +28,12 @@ import com.jpexs.decompiler.flash.ecma.NotCompileTime; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.helpers.Reference; + import java.util.ArrayList; import java.util.List; /** - * + * callproplex instruction - Call a property, lexically. * @author JPEXS */ public class CallPropLexIns extends CallPropertyIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallPropVoidIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallPropVoidIns.java index 6e059b272..184bf95b9 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallPropVoidIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallPropVoidIns.java @@ -29,11 +29,12 @@ import com.jpexs.decompiler.flash.abc.avm2.model.FullMultinameAVM2Item; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.helpers.Reference; + import java.util.ArrayList; import java.util.List; /** - * + * callpropvoid instruction - Call a property, ignore return value. * @author JPEXS */ public class CallPropVoidIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallPropertyIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallPropertyIns.java index b58ef8c3d..1d4f5d58a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallPropertyIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallPropertyIns.java @@ -30,11 +30,12 @@ import com.jpexs.decompiler.flash.ecma.NotCompileTime; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.helpers.Reference; + import java.util.ArrayList; import java.util.List; /** - * + * callproperty instruction - Call a property. * @author JPEXS */ public class CallPropertyIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallStaticIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallStaticIns.java index f6ec8baa7..9e56e5f7d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallStaticIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallStaticIns.java @@ -27,11 +27,12 @@ import com.jpexs.decompiler.flash.abc.avm2.model.CallStaticAVM2Item; import com.jpexs.decompiler.flash.ecma.NotCompileTime; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.ArrayList; import java.util.List; /** - * + * callstatic instruction - Call a method by method index. * @author JPEXS */ public class CallStaticIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallSuperIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallSuperIns.java index 6150a3bed..d21ef75fd 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallSuperIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallSuperIns.java @@ -28,11 +28,12 @@ import com.jpexs.decompiler.flash.abc.avm2.model.FullMultinameAVM2Item; import com.jpexs.decompiler.flash.ecma.NotCompileTime; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.ArrayList; import java.util.List; /** - * + * callsuper instruction - Call a super method. * @author JPEXS */ public class CallSuperIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallSuperVoidIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallSuperVoidIns.java index 170e7ae58..6c98aef68 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallSuperVoidIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/executing/CallSuperVoidIns.java @@ -27,11 +27,12 @@ import com.jpexs.decompiler.flash.abc.avm2.model.CallSuperAVM2Item; import com.jpexs.decompiler.flash.abc.avm2.model.FullMultinameAVM2Item; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.ArrayList; import java.util.List; /** - * + * callsuper instruction - Call a super method, ignoring the return value. * @author JPEXS */ public class CallSuperVoidIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfEqIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfEqIns.java index 8477985e9..30710b843 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfEqIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfEqIns.java @@ -33,7 +33,7 @@ import java.util.HashMap; import java.util.List; /** - * + * ifeq instruction - if two values are equal, jump. * @author JPEXS */ public class IfEqIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfFalseIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfFalseIns.java index 84f9f0101..5d5c3943c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfFalseIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfFalseIns.java @@ -31,7 +31,7 @@ import java.util.HashMap; import java.util.List; /** - * + * iffalse instruction - if value is false, jump. * @author JPEXS */ public class IfFalseIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfGeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfGeIns.java index 6575e2aa5..8adefd1e3 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfGeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfGeIns.java @@ -34,7 +34,7 @@ import java.util.HashMap; import java.util.List; /** - * + * ifge instruction - if value is greater or equal, jump. * @author JPEXS */ public class IfGeIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfGtIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfGtIns.java index af7704d00..4b08c1672 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfGtIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfGtIns.java @@ -34,7 +34,7 @@ import java.util.HashMap; import java.util.List; /** - * + * ifgt instruction - if value is greater, jump. * @author JPEXS */ public class IfGtIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfLeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfLeIns.java index a1638e781..e1c397887 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfLeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfLeIns.java @@ -34,7 +34,7 @@ import java.util.HashMap; import java.util.List; /** - * + * ifle instruction - if value is less or equal, jump. * @author JPEXS */ public class IfLeIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfLtIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfLtIns.java index 593286d46..7b4c1f7b4 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfLtIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfLtIns.java @@ -34,7 +34,7 @@ import java.util.HashMap; import java.util.List; /** - * + * iflt instruction - if value is less, jump. * @author JPEXS */ public class IfLtIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNGeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNGeIns.java index 20d666649..d20d9fe8c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNGeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNGeIns.java @@ -34,7 +34,7 @@ import java.util.HashMap; import java.util.List; /** - * + * ifnge instruction - if value is greater or equal, jump. * @author JPEXS */ public class IfNGeIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNGtIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNGtIns.java index 3324f40c5..dfb3f4324 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNGtIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNGtIns.java @@ -34,7 +34,7 @@ import java.util.HashMap; import java.util.List; /** - * + * ifngt instruction - if value is not greater, jump. * @author JPEXS */ public class IfNGtIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNLeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNLeIns.java index 0ac472270..637433233 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNLeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNLeIns.java @@ -34,7 +34,7 @@ import java.util.HashMap; import java.util.List; /** - * + * ifnle instruction - if value is not less or equal, jump. * @author JPEXS */ public class IfNLeIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNLtIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNLtIns.java index 576c6e4fd..d397699c3 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNLtIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNLtIns.java @@ -34,7 +34,7 @@ import java.util.HashMap; import java.util.List; /** - * + * ifnlt instruction - if value is not less, jump. * @author JPEXS */ public class IfNLtIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNeIns.java index 46970525f..281453624 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfNeIns.java @@ -33,7 +33,7 @@ import java.util.HashMap; import java.util.List; /** - * + * ifne instruction - if two values are not equal, jump. * @author JPEXS */ public class IfNeIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfStrictEqIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfStrictEqIns.java index 0c12ff09f..e87871a12 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfStrictEqIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfStrictEqIns.java @@ -33,7 +33,7 @@ import java.util.HashMap; import java.util.List; /** - * + * ifstricteq instruction - if two values are strictly equal, jump. * @author JPEXS */ public class IfStrictEqIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfStrictNeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfStrictNeIns.java index 416abd4ff..6e2c20dc2 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfStrictNeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfStrictNeIns.java @@ -33,7 +33,7 @@ import java.util.HashMap; import java.util.List; /** - * + * ifstrictne instruction - if two values are strictly not equal, jump. * @author JPEXS */ public class IfStrictNeIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfTrueIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfTrueIns.java index 41c3af33d..b0a91936e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfTrueIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/IfTrueIns.java @@ -31,7 +31,7 @@ import java.util.HashMap; import java.util.List; /** - * + * iftrue instruction - if value is true, jump. * @author JPEXS */ public class IfTrueIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/JumpIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/JumpIns.java index 36b77639a..3c25ba469 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/JumpIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/JumpIns.java @@ -29,7 +29,7 @@ import java.util.HashMap; import java.util.List; /** - * + * jump instruction - jump. * @author JPEXS */ public class JumpIns extends InstructionDefinition implements IfTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/LookupSwitchIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/LookupSwitchIns.java index 84eec0bc1..66b1230cb 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/LookupSwitchIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/jumps/LookupSwitchIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * lookupswitch instruction - switch based on a key. * @author JPEXS */ public class LookupSwitchIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/DecLocalIIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/DecLocalIIns.java index 880068a84..d7ad95d39 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/DecLocalIIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/DecLocalIIns.java @@ -31,10 +31,11 @@ import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.flash.ecma.NotCompileTime; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * declocal_i instruction - Decrement local integer variable by 1. * @author JPEXS */ public class DecLocalIIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/DecLocalIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/DecLocalIns.java index 07c9680ce..a290faf64 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/DecLocalIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/DecLocalIns.java @@ -31,10 +31,11 @@ import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.flash.ecma.NotCompileTime; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * declocal instruction - Decrement local variable by 1. * @author JPEXS */ public class DecLocalIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal0Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal0Ins.java index 794c9042f..ad777a07c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal0Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal0Ins.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.instructions.localregs; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; /** - * + * getlocal0 instruction - get local register 0 value. * @author JPEXS */ public class GetLocal0Ins extends GetLocalTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal1Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal1Ins.java index 5c66ed011..c4936d744 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal1Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal1Ins.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.instructions.localregs; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; /** - * + * getlocal1 instruction - get local register 1 value. * @author JPEXS */ public class GetLocal1Ins extends GetLocalTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal2Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal2Ins.java index 6cf729fc2..da2d5969f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal2Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal2Ins.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.instructions.localregs; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; /** - * + * getlocal2 instruction - get local register 2 value. * @author JPEXS */ public class GetLocal2Ins extends GetLocalTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal3Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal3Ins.java index 1c81ba9cb..a3b608e93 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal3Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocal3Ins.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.instructions.localregs; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; /** - * + * getlocal2 instruction - get local register 2 value. * @author JPEXS */ public class GetLocal3Ins extends GetLocalTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocalIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocalIns.java index eda595d1d..edffea24e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocalIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocalIns.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.flash.abc.avm2.AVM2Code; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; /** - * + * getlocal instruction - get local register value. * @author JPEXS */ public class GetLocalIns extends GetLocalTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocalTypeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocalTypeIns.java index f4053cf41..d541d0060 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocalTypeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/GetLocalTypeIns.java @@ -49,7 +49,7 @@ import com.jpexs.decompiler.graph.model.DuplicateItem; import java.util.List; /** - * + * getlocal type instruction - get local register value. * @author JPEXS */ public abstract class GetLocalTypeIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/IncLocalIIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/IncLocalIIns.java index 96758ebad..21d659297 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/IncLocalIIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/IncLocalIIns.java @@ -34,7 +34,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * inclocal_i instruction - Increment local integer register by 1. * @author JPEXS */ public class IncLocalIIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/IncLocalIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/IncLocalIns.java index 15f9cae42..aa2100ed2 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/IncLocalIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/IncLocalIns.java @@ -34,7 +34,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * inclocal instruction - Increment local register by 1. * @author JPEXS */ public class IncLocalIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/KillIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/KillIns.java index 13d65a344..ed5fd349f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/KillIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/KillIns.java @@ -25,7 +25,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * kill instruction - kill local register. * @author JPEXS */ public class KillIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal0Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal0Ins.java index 1d6aa5338..663df15f8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal0Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal0Ins.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.instructions.localregs; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; /** - * + * setlocal0 instruction - set local register 0 value. * @author JPEXS */ public class SetLocal0Ins extends SetLocalTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal1Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal1Ins.java index 01143de37..d265d964e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal1Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal1Ins.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.instructions.localregs; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; /** - * + * setlocal1 instruction - set local register 1 value. * @author JPEXS */ public class SetLocal1Ins extends SetLocalTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal2Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal2Ins.java index 70227e3a9..ce5b36e96 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal2Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal2Ins.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.instructions.localregs; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; /** - * + * setlocal2 instruction - set local register 2 value. * @author JPEXS */ public class SetLocal2Ins extends SetLocalTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal3Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal3Ins.java index 180846db5..8a3be4393 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal3Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocal3Ins.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.instructions.localregs; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; /** - * + * setlocal3 instruction - set local register 3 value. * @author JPEXS */ public class SetLocal3Ins extends SetLocalTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocalIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocalIns.java index 3ddc03903..0b65fce47 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocalIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocalIns.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.flash.abc.avm2.AVM2Code; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; /** - * + * setlocal instruction - set local register value. * @author JPEXS */ public class SetLocalIns extends SetLocalTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocalTypeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocalTypeIns.java index 6cf4886f1..f1f23e2f3 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocalTypeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/localregs/SetLocalTypeIns.java @@ -40,7 +40,7 @@ import com.jpexs.decompiler.graph.model.PopItem; import java.util.List; /** - * + * setlocal type instruction - set local register value. * @author JPEXS */ public abstract class SetLocalTypeIns extends InstructionDefinition implements SetTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/BkptIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/BkptIns.java index 8a771ce01..5476fd5cd 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/BkptIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/BkptIns.java @@ -23,7 +23,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * bkpt instruction - break point. * @author JPEXS */ public class BkptIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/BkptLineIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/BkptLineIns.java index eaf30b779..6ce5c7ac7 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/BkptLineIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/BkptLineIns.java @@ -24,7 +24,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * bkptline instruction - break point with line number. * @author JPEXS */ public class BkptLineIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/DeletePropertyIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/DeletePropertyIns.java index 6e39048da..37e7d7878 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/DeletePropertyIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/DeletePropertyIns.java @@ -28,10 +28,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.operations.DeletePropertyAVM2It import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.helpers.Reference; + import java.util.List; /** - * + * deleteproperty instruction - delete property from object. * @author JPEXS */ public class DeletePropertyIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/FindDefIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/FindDefIns.java index 953d3e4bf..1199ee4e9 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/FindDefIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/FindDefIns.java @@ -25,10 +25,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.FindDefAVM2Item; import com.jpexs.decompiler.flash.abc.types.Multiname; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * finddef instruction - find definition of multiname. * @author JPEXS */ public class FindDefIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/FindPropertyIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/FindPropertyIns.java index b6aa72669..54b10dea8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/FindPropertyIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/FindPropertyIns.java @@ -28,10 +28,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.FullMultinameAVM2Item; import com.jpexs.decompiler.flash.ecma.NotCompileTime; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * findproperty instruction - find property. * @author JPEXS */ public class FindPropertyIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/FindPropertyStrictIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/FindPropertyStrictIns.java index 635b70085..c845de391 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/FindPropertyStrictIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/FindPropertyStrictIns.java @@ -28,10 +28,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.FullMultinameAVM2Item; import com.jpexs.decompiler.flash.ecma.NotCompileTime; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * findpropstrict instruction - find property strictly. * @author JPEXS */ public class FindPropertyStrictIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetDescendantsIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetDescendantsIns.java index 28b0a6c92..b3b7ab216 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetDescendantsIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetDescendantsIns.java @@ -30,7 +30,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * getdescendants instruction - get descendants of object. * @author JPEXS */ public class GetDescendantsIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetGlobalScopeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetGlobalScopeIns.java index 35775123d..d0c70e6d3 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetGlobalScopeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetGlobalScopeIns.java @@ -28,7 +28,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * getglobalscope instruction - get global scope object. * @author JPEXS */ public class GetGlobalScopeIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetGlobalSlotIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetGlobalSlotIns.java index ead419f35..cf60ea700 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetGlobalSlotIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetGlobalSlotIns.java @@ -35,7 +35,7 @@ import com.jpexs.helpers.Reference; import java.util.List; /** - * + * getglobalslot instruction - get global slot value. * @author JPEXS */ public class GetGlobalSlotIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetLexIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetLexIns.java index d61cf8f3a..32715a848 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetLexIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetLexIns.java @@ -38,7 +38,7 @@ import java.util.List; import java.util.Objects; /** - * + * getlex instruction - get property of object, lexically. * @author JPEXS */ public class GetLexIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetOuterScopeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetOuterScopeIns.java index ff8a75f8f..b5b5cbca7 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetOuterScopeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetOuterScopeIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * getouterscope instruction - get outer scope object. * @author JPEXS */ public class GetOuterScopeIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetPropertyIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetPropertyIns.java index 970f30f8e..08b97b716 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetPropertyIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetPropertyIns.java @@ -53,7 +53,7 @@ import java.util.Objects; import java.util.Set; /** - * + * getproperty instruction - get property of object. * @author JPEXS */ public class GetPropertyIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetScopeObjectIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetScopeObjectIns.java index 3a3b8e2a9..b9c1f0fa1 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetScopeObjectIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetScopeObjectIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * getscopeobject instruction - get scope object. * @author JPEXS */ public class GetScopeObjectIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetSlotIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetSlotIns.java index 73eeb26b7..3aa73fdf3 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetSlotIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetSlotIns.java @@ -34,7 +34,7 @@ import com.jpexs.helpers.Reference; import java.util.List; /** - * + * getslot instruction - get slot value. * @author JPEXS */ public class GetSlotIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetSuperIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetSuperIns.java index c52cb10f0..1cde3777b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetSuperIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/GetSuperIns.java @@ -29,7 +29,7 @@ import com.jpexs.helpers.Reference; import java.util.List; /** - * + * getsuper instruction - get super object. * @author JPEXS */ public class GetSuperIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/HasNext2Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/HasNext2Ins.java index ec7d3b87d..b4680256f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/HasNext2Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/HasNext2Ins.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TypeItem; import java.util.List; /** - * + * hasnext2 instruction - determine if the given object has any more properties. * @author JPEXS */ public class HasNext2Ins extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/HasNextIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/HasNextIns.java index e670ffe6c..17fb017c6 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/HasNextIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/HasNextIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * hasnext instruction - determine if the given object has any more properties. * @author JPEXS */ public class HasNextIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/InIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/InIns.java index e16638d78..0519083d6 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/InIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/InIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * in instruction - determine if the given object has the given property. * @author JPEXS */ public class InIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/InitPropertyIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/InitPropertyIns.java index 3b650ca0e..24af76757 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/InitPropertyIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/InitPropertyIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * initproperty instruction - initialize property. * @author JPEXS */ public class InitPropertyIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/LabelIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/LabelIns.java index 1a4081433..8fb627c93 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/LabelIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/LabelIns.java @@ -22,7 +22,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * label instruction - label for branch instructions. * @author JPEXS */ public class LabelIns extends InstructionDefinition { //this can be target of branch diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/NextNameIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/NextNameIns.java index 263b99432..abc7c42d1 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/NextNameIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/NextNameIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * nextname instruction - get the next name of an object. * @author JPEXS */ public class NextNameIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/NextValueIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/NextValueIns.java index 32192da45..280370441 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/NextValueIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/NextValueIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * nextvalue instruction - get the next value of an object. * @author JPEXS */ public class NextValueIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/NopIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/NopIns.java index cfa282253..157a96b23 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/NopIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/NopIns.java @@ -22,7 +22,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * nop instruction - no operation. * @author JPEXS */ public class NopIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/ReturnValueIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/ReturnValueIns.java index 08983f46e..6dac7433d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/ReturnValueIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/ReturnValueIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * returnvalue instruction - return value from function. * @author JPEXS */ public class ReturnValueIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/ReturnVoidIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/ReturnVoidIns.java index bc78e809c..36f728ee1 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/ReturnVoidIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/ReturnVoidIns.java @@ -28,7 +28,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * returnvoid instruction - return from function with no return value. * @author JPEXS */ public class ReturnVoidIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetGlobalSlotIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetGlobalSlotIns.java index e94a9eef3..93f535a92 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetGlobalSlotIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetGlobalSlotIns.java @@ -28,7 +28,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * setglobalslot instruction - set global slot value. * @author JPEXS */ public class SetGlobalSlotIns extends InstructionDefinition implements SetTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetPropertyIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetPropertyIns.java index c638da953..87d71fe06 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetPropertyIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetPropertyIns.java @@ -36,7 +36,7 @@ import java.util.List; import java.util.Objects; /** - * + * setproperty instruction - set property value. * @author JPEXS */ public class SetPropertyIns extends InstructionDefinition implements SetTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetSlotIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetSlotIns.java index da0b5dfff..f2fdd2ed7 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetSlotIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetSlotIns.java @@ -45,7 +45,7 @@ import java.util.List; import java.util.Objects; /** - * + * setslot instruction - set slot value. * @author JPEXS */ public class SetSlotIns extends InstructionDefinition implements SetTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetSuperIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetSuperIns.java index 5b43bd490..e84b9f94d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetSuperIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/SetSuperIns.java @@ -33,7 +33,7 @@ import java.util.List; import java.util.Objects; /** - * + * setsuper instruction - set super property value. * @author JPEXS */ public class SetSuperIns extends InstructionDefinition implements SetTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/ThrowIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/ThrowIns.java index bdb7b5e61..948683b41 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/ThrowIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/ThrowIns.java @@ -30,7 +30,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * throw instruction - throw an exception. * @author JPEXS */ public class ThrowIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/TimestampIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/TimestampIns.java index 821b0d59c..4aa570afc 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/TimestampIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/TimestampIns.java @@ -23,7 +23,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * timestamp instruction. * @author JPEXS */ public class TimestampIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/AddPIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/AddPIns.java index 104331dfb..4f46c7a50 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/AddPIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/AddPIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * add_p instruction - add two numbers with number context. * @author JPEXS */ public class AddPIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/ConvertMIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/ConvertMIns.java index 31af245a5..43e6ae2ef 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/ConvertMIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/ConvertMIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * convert_m instruction - convert to decimal. * @author JPEXS */ public class ConvertMIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/ConvertMPIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/ConvertMPIns.java index ea1849030..c91bb92de 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/ConvertMPIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/ConvertMPIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * convert_m_p instruction - convert to decimal with number context. * @author JPEXS */ public class ConvertMPIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/DecLocalPIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/DecLocalPIns.java index a2dc74490..633922b64 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/DecLocalPIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/DecLocalPIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * declocal_p instruction - decrement local register with number context. * @author JPEXS */ public class DecLocalPIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/DecrementPIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/DecrementPIns.java index f545496dc..55d7ccdf8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/DecrementPIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/DecrementPIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * decrement_p instruction - decrement a number with number context. * @author JPEXS */ public class DecrementPIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/DividePIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/DividePIns.java index 2be2c2fe6..3785a257f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/DividePIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/DividePIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * divide_p instruction - divide two numbers with number context. * @author JPEXS */ public class DividePIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/IncLocalPIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/IncLocalPIns.java index 1a838dae9..970fda29a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/IncLocalPIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/IncLocalPIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * inclocal_p instruction - increment a local register with number context. * @author JPEXS */ public class IncLocalPIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/IncrementPIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/IncrementPIns.java index 3bcf7b2f0..224e0a01a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/IncrementPIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/IncrementPIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * increment_p instruction - increment a number with number context. * @author JPEXS */ public class IncrementPIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/ModuloPIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/ModuloPIns.java index 6f5a686d0..e62a1971c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/ModuloPIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/ModuloPIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * modulo_p instruction - modulo with number context. * @author JPEXS */ public class ModuloPIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/MultiplyPIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/MultiplyPIns.java index cfdcd0608..9083ce7dc 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/MultiplyPIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/MultiplyPIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * multiply_p instruction - multiply two numbers with number context. * @author JPEXS */ public class MultiplyPIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/NegatePIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/NegatePIns.java index 9f59e6157..c9829c440 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/NegatePIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/NegatePIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * negate_p instruction - negate with number context. * @author JPEXS */ public class NegatePIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/PushDNanIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/PushDNanIns.java index 147428529..b79aa4203 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/PushDNanIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/PushDNanIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * pushdnan instruction - push a decimal NaN. * @author JPEXS */ public class PushDNanIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/PushDecimalIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/PushDecimalIns.java index 9b2d1edb0..01e0d1b17 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/PushDecimalIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/PushDecimalIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * pushdecimal instruction - push a decimal. * @author JPEXS */ public class PushDecimalIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/SubtractPIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/SubtractPIns.java index 3a6654258..0e5b28536 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/SubtractPIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/decimalsupport/SubtractPIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * subtract_p instruction - subtract a number with number context. * @author JPEXS */ public class SubtractPIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceBIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceBIns.java index 1aaf5a67a..484466ed4 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceBIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceBIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TypeItem; /** - * + * coerce_b instruction - coerce to boolean. * @author JPEXS */ public class CoerceBIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceDIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceDIns.java index 3cdfa3d43..5d35a4cdc 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceDIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceDIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TypeItem; /** - * + * coerce_d instruction - coerce to double. * @author JPEXS */ public class CoerceDIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceIIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceIIns.java index f8109de81..7b508c87c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceIIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceIIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TypeItem; /** - * + * coerce_i instruction - coerce to int. * @author JPEXS */ public class CoerceIIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceUIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceUIns.java index 1d573015a..1951d18bb 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceUIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/deprecated/CoerceUIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TypeItem; /** - * + * coerce_u instruction - coerce to uint. * @author JPEXS */ public class CoerceUIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/ConvertF4Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/ConvertF4Ins.java index 5ad3e1687..41b2954ea 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/ConvertF4Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/ConvertF4Ins.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * convert_f4 - Convert a value to a float4. * @author JPEXS */ public class ConvertF4Ins extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/ConvertFIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/ConvertFIns.java index 43878ff68..dffefe809 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/ConvertFIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/ConvertFIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * convert_f - Convert a value to a float. * @author JPEXS */ public class ConvertFIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/Lf32x4Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/Lf32x4Ins.java index 9ec426bd7..a258e4d02 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/Lf32x4Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/Lf32x4Ins.java @@ -31,7 +31,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * lf32x4 - Load a float4 from domain memory. * @author JPEXS */ public class Lf32x4Ins extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/PushFloat4Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/PushFloat4Ins.java index 388fadb66..22b0dc0e8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/PushFloat4Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/PushFloat4Ins.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * pushfloat4 - Push a float4 constant onto the stack. * @author JPEXS */ public class PushFloat4Ins extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/PushFloatIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/PushFloatIns.java index a625d92eb..8ee94c2e8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/PushFloatIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/PushFloatIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * pushfloat - Push a float constant onto the stack. * @author JPEXS */ public class PushFloatIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/Sf32x4Ins.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/Sf32x4Ins.java index ed9255936..c3f064879 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/Sf32x4Ins.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/Sf32x4Ins.java @@ -25,7 +25,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * sf32x4 - Store a float4 value into memory. * @author JPEXS */ public class Sf32x4Ins extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/UnPlusIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/UnPlusIns.java index 5a2f11dba..e372a9b3e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/UnPlusIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/floatsupport/UnPlusIns.java @@ -22,7 +22,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * unplus - unary plus operator. * @author JPEXS */ public class UnPlusIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/AbsJumpIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/AbsJumpIns.java index 40faa9e22..13ba102ec 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/AbsJumpIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/AbsJumpIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * abs_jump - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/AddDIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/AddDIns.java index 3faaf979f..cfece5469 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/AddDIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/AddDIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * add_d - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/AllocIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/AllocIns.java index 2d70b731b..38ef8bfbf 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/AllocIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/AllocIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * alloc - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/CallInterfaceIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/CallInterfaceIns.java index 3f5529f74..26e2b7974 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/CallInterfaceIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/CallInterfaceIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * callinterface - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/CallSuperIdIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/CallSuperIdIns.java index 6b1455624..340dcd09c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/CallSuperIdIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/CallSuperIdIns.java @@ -25,7 +25,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * callsuperid - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/CodeGenOpIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/CodeGenOpIns.java index a0c0a8bf9..83a62e30d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/CodeGenOpIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/CodeGenOpIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * codegenop - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/ConcatIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/ConcatIns.java index 8d90dd69a..c56ec912e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/ConcatIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/ConcatIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * concat - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DecodeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DecodeIns.java index 618bfd10c..8d43e9d27 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DecodeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DecodeIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * decode - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DelDescendantsIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DelDescendantsIns.java index 0936ac8ac..c6444067a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DelDescendantsIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DelDescendantsIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * deldescendants - undocumented opcode. * @author JPEXS * * source: ?? diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DeletePropertyLateIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DeletePropertyLateIns.java index f2227e93b..e69d68cf2 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DeletePropertyLateIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DeletePropertyLateIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * deletepropertylate - undocumented opcode. * @author JPEXS * * source: ?? diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DoubleToAtomIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DoubleToAtomIns.java index dc332f159..7c1a21a8c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DoubleToAtomIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/DoubleToAtomIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * doubletoatom - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/FindPropGlobalIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/FindPropGlobalIns.java index 4d5296c6f..9e1f327f9 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/FindPropGlobalIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/FindPropGlobalIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * findpropglobal - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/FindPropGlobalStrictIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/FindPropGlobalStrictIns.java index 975cd694f..215495e6b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/FindPropGlobalStrictIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/FindPropGlobalStrictIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * findpropglobalstrict - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/GetPropertyLateIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/GetPropertyLateIns.java index 2ea047060..b4f56ed57 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/GetPropertyLateIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/GetPropertyLateIns.java @@ -22,7 +22,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * getpropertylate - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/InvalidIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/InvalidIns.java index 30ef160d8..2d232f9e8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/InvalidIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/InvalidIns.java @@ -25,7 +25,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * invalid - undocumented opcode. * @author JPEXS * * source: ?? diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/MarkIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/MarkIns.java index f96da107d..011d448f0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/MarkIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/MarkIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * mark - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/PrologueIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/PrologueIns.java index 2aab699d6..e9cc8f841 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/PrologueIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/PrologueIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * prologue - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/PushConstantIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/PushConstantIns.java index a79522fa4..79cc7c098 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/PushConstantIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/PushConstantIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * pushconstant - undocumented opcode. * @author JPEXS * * source: ?? diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/SendEnterIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/SendEnterIns.java index 9cee29a02..9275070f0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/SendEnterIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/SendEnterIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * sendenter - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/SetPropertyLateIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/SetPropertyLateIns.java index 2a0074461..d8886fe53 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/SetPropertyLateIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/SetPropertyLateIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * setpropertylate - undocumented opcode. * @author JPEXS * * source: ?? diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/SweepIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/SweepIns.java index ad975bb23..54037d053 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/SweepIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/SweepIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * sweep - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/VerifyOpIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/VerifyOpIns.java index 11388877b..2f2f196e1 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/VerifyOpIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/VerifyOpIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * verifyop - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/VerifyPassIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/VerifyPassIns.java index 14001e520..b299bdb97 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/VerifyPassIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/VerifyPassIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * verifypass - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/WbIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/WbIns.java index 5349f6973..849a9ed79 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/WbIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/other/unknown/WbIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2InstructionFlag; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * wb - undocumented opcode. * @author JPEXS * * source: diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/DupIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/DupIns.java index ca4901148..1482794a8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/DupIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/DupIns.java @@ -25,10 +25,11 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.decompiler.graph.model.DuplicateItem; + import java.util.List; /** - * + * dup instruction - Duplicate the top value on the stack. * @author JPEXS */ public class DupIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PopIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PopIns.java index 1d0d8ed77..ceb4443b6 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PopIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PopIns.java @@ -30,7 +30,7 @@ import com.jpexs.decompiler.graph.model.AnyItem; import java.util.List; /** - * + * pop instruction - Pop the top value from the stack. * @author JPEXS */ public class PopIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PopScopeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PopScopeIns.java index 6a0b2bbf5..a59ba5320 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PopScopeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PopScopeIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * popscope instruction - Pop the top scope from the scope stack. * @author JPEXS */ public class PopScopeIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushByteIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushByteIns.java index 65375ff26..2da050393 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushByteIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushByteIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * pushbyte instruction - Push a byte value onto the stack. * @author JPEXS */ public class PushByteIns extends InstructionDefinition implements PushIntegerTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushDoubleIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushDoubleIns.java index 7ca1d1020..3f1c1c91f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushDoubleIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushDoubleIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * pushdouble instruction - Push a double value onto the stack. * @author JPEXS */ public class PushDoubleIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushFalseIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushFalseIns.java index 58252f6f1..d3733dee1 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushFalseIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushFalseIns.java @@ -28,7 +28,7 @@ import com.jpexs.decompiler.graph.model.FalseItem; import java.util.List; /** - * + * pushfalse instruction - Push a false value onto the stack. * @author JPEXS */ public class PushFalseIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushIntIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushIntIns.java index 222ef06d6..8ab8a3036 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushIntIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushIntIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * pushint instruction - Push an integer value onto the stack. * @author JPEXS */ public class PushIntIns extends InstructionDefinition implements PushIntegerTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushNamespaceIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushNamespaceIns.java index fe6b60886..acca2496d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushNamespaceIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushNamespaceIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * pushnamespace instruction - Push a namespace onto the stack. * @author JPEXS */ public class PushNamespaceIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushNanIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushNanIns.java index 96261f2a5..1c2f50a8c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushNanIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushNanIns.java @@ -28,7 +28,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * pushnan instruction - Push a NaN value onto the stack. * @author JPEXS */ public class PushNanIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushNullIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushNullIns.java index 9aec74511..71d62d6a2 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushNullIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushNullIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * pushnull instruction - Push a null value onto the stack. * @author JPEXS */ public class PushNullIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushScopeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushScopeIns.java index 11d4d2547..5e9606b54 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushScopeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushScopeIns.java @@ -28,7 +28,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * pushscope instruction - Push a value onto the scope stack. * @author JPEXS */ public class PushScopeIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushShortIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushShortIns.java index af663343d..65aac6183 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushShortIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushShortIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * pushshort instruction - Push a short value onto the stack. * @author JPEXS */ public class PushShortIns extends InstructionDefinition implements PushIntegerTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushStringIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushStringIns.java index 6191d254b..551ca2523 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushStringIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushStringIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * pushstring instruction - Push a string onto the stack. * @author JPEXS */ public class PushStringIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushTrueIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushTrueIns.java index 59b21c8b7..c945b63af 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushTrueIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushTrueIns.java @@ -28,7 +28,7 @@ import com.jpexs.decompiler.graph.model.TrueItem; import java.util.List; /** - * + * pushtrue instruction - Push a true value onto the stack. * @author JPEXS */ public class PushTrueIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushUIntIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushUIntIns.java index b37d34b22..110b3ca00 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushUIntIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushUIntIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * pushuint instruction - Push an unsigned integer onto the stack. * @author JPEXS */ public class PushUIntIns extends InstructionDefinition implements PushIntegerTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushUndefinedIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushUndefinedIns.java index 317671a98..212973092 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushUndefinedIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushUndefinedIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * pushundefined instruction - Push an undefined value onto the stack. * @author JPEXS */ public class PushUndefinedIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushWithIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushWithIns.java index bb77ce4fa..3a3e825de 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushWithIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/PushWithIns.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * pushwith instruction - Push a with object onto the scope stack. * @author JPEXS */ public class PushWithIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/SwapIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/SwapIns.java index 463308847..b81b89e4b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/SwapIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/stack/SwapIns.java @@ -28,7 +28,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * swap instruction - Swaps the top two values on the stack. * @author JPEXS */ public class SwapIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ApplyTypeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ApplyTypeIns.java index 4596afd11..c7d66b024 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ApplyTypeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ApplyTypeIns.java @@ -26,12 +26,13 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; import com.jpexs.decompiler.flash.abc.avm2.model.ApplyTypeAVM2Item; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.ArrayList; import java.util.Collections; import java.util.List; /** - * + * applytype instruction - Push a type onto the stack with the specified parameters. * @author JPEXS */ public class ApplyTypeIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/AsTypeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/AsTypeIns.java index 1de26d1ef..6d40aa73b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/AsTypeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/AsTypeIns.java @@ -28,11 +28,12 @@ import com.jpexs.decompiler.flash.abc.avm2.model.operations.AsTypeAVM2Item; import com.jpexs.decompiler.flash.ecma.NotCompileTime; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.ArrayList; import java.util.List; /** - * + * astype instruction - Type conversion. * @author JPEXS */ public class AsTypeIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/AsTypeLateIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/AsTypeLateIns.java index ae42a0799..9129dc964 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/AsTypeLateIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/AsTypeLateIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.operations.AsTypeAVM2Item; import com.jpexs.decompiler.flash.ecma.NotCompileTime; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * astypelate instruction - Type conversion, with a type determined at runtime. * @author JPEXS */ public class AsTypeLateIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceAIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceAIns.java index af7a275a4..dada03c5f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceAIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceAIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.CoerceAVM2Item; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.decompiler.graph.TypeItem; + import java.util.List; /** - * + * coerce_a instruction - Coerce any type. * @author JPEXS */ public class CoerceAIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceIns.java index d7b32e626..d721670fe 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceIns.java @@ -34,10 +34,11 @@ import com.jpexs.decompiler.flash.ecma.Null; import com.jpexs.decompiler.flash.ecma.Undefined; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * coerce instruction - Coerce value to specified type. * @author JPEXS */ public class CoerceIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceOIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceOIns.java index b32c4f7b3..0590adbf9 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceOIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceOIns.java @@ -28,7 +28,7 @@ import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TypeItem; /** - * + * coerce_o instruction - Coerce to object type. * @author JPEXS */ public class CoerceOIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceOrConvertTypeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceOrConvertTypeIns.java index 3ea65a878..97dcab6bb 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceOrConvertTypeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceOrConvertTypeIns.java @@ -21,7 +21,7 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.graph.GraphTargetItem; /** - * + * Coerce or convert type instruction interface. * @author JPEXS */ public interface CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceSIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceSIns.java index 2f62f51cd..7145cf9a5 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceSIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/CoerceSIns.java @@ -30,10 +30,11 @@ import com.jpexs.decompiler.graph.DottedChain; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.decompiler.graph.TypeItem; + import java.util.List; /** - * + * coerce_s instruction - Coerce value to string. * @author JPEXS */ public class CoerceSIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertBIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertBIns.java index c5d2a8572..4f0a1b25f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertBIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertBIns.java @@ -28,10 +28,11 @@ import com.jpexs.decompiler.graph.DottedChain; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.decompiler.graph.TypeItem; + import java.util.List; /** - * + * convert_b instruction - Convert to boolean. * @author JPEXS */ public class ConvertBIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertDIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertDIns.java index 5d94580bf..ac82da9aa 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertDIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertDIns.java @@ -28,10 +28,11 @@ import com.jpexs.decompiler.graph.DottedChain; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.decompiler.graph.TypeItem; + import java.util.List; /** - * + * convert_d instruction - Convert to number. * @author JPEXS */ public class ConvertDIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertIIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertIIns.java index aa6e65387..758c1ebb4 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertIIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertIIns.java @@ -28,10 +28,11 @@ import com.jpexs.decompiler.graph.DottedChain; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.decompiler.graph.TypeItem; + import java.util.List; /** - * + * convert_i instruction - Convert to integer. * @author JPEXS */ public class ConvertIIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertOIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertOIns.java index 9dc47d9d0..85120f104 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertOIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertOIns.java @@ -30,10 +30,11 @@ import com.jpexs.decompiler.graph.DottedChain; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.decompiler.graph.TypeItem; + import java.util.List; /** - * + * convert_o instruction - Convert to object. * @author JPEXS */ public class ConvertOIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertSIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertSIns.java index 1540901d1..e8a1917ea 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertSIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertSIns.java @@ -28,10 +28,11 @@ import com.jpexs.decompiler.graph.DottedChain; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.decompiler.graph.TypeItem; + import java.util.List; /** - * + * convert_s instruction - Convert to string. * @author JPEXS */ public class ConvertSIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertUIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertUIns.java index ab3838514..8fdbb259c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertUIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/ConvertUIns.java @@ -28,10 +28,11 @@ import com.jpexs.decompiler.graph.DottedChain; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; import com.jpexs.decompiler.graph.TypeItem; + import java.util.List; /** - * + * convert_u instruction - Convert to unsigned integer. * @author JPEXS */ public class ConvertUIns extends InstructionDefinition implements CoerceOrConvertTypeIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/InstanceOfIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/InstanceOfIns.java index e509ab529..ded017b6c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/InstanceOfIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/InstanceOfIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * instanceof instruction - Check if object is instance of type. * @author JPEXS */ public class InstanceOfIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/IsTypeIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/IsTypeIns.java index ff5dc87cc..dfdbc7eb4 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/IsTypeIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/IsTypeIns.java @@ -29,7 +29,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * istype instruction - Check if object is instance of type. * @author JPEXS */ public class IsTypeIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/IsTypeLateIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/IsTypeLateIns.java index e8ccf72f7..0401cfcf4 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/IsTypeLateIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/IsTypeLateIns.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * istypelate instruction - Check if object is instance of type, with a type determined at runtime. * @author JPEXS */ public class IsTypeLateIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/TypeOfIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/TypeOfIns.java index 8dc148fe7..5e44f7536 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/TypeOfIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/types/TypeOfIns.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.TranslateStack; import java.util.List; /** - * + * typeof instruction - Get type of object. * @author JPEXS */ public class TypeOfIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/CheckFilterIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/CheckFilterIns.java index 7c2bc5d2f..38871b509 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/CheckFilterIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/CheckFilterIns.java @@ -25,10 +25,11 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; import com.jpexs.decompiler.flash.abc.avm2.model.FilteredCheckAVM2Item; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * checkfilter instruction - Check to make sure an object can have a filter operation performed on it. * @author JPEXS */ public class CheckFilterIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/DXNSIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/DXNSIns.java index 5c6b12636..d9d313868 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/DXNSIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/DXNSIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.DefaultXMLNamespace; import com.jpexs.decompiler.flash.abc.avm2.model.StringAVM2Item; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * dxns instruction - Set default XML namespace. * @author JPEXS */ public class DXNSIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/DXNSLateIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/DXNSLateIns.java index 3ec7c26f9..228e4cb3f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/DXNSLateIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/DXNSLateIns.java @@ -25,10 +25,11 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; import com.jpexs.decompiler.flash.abc.avm2.model.DefaultXMLNamespace; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * dxnslate instruction - Set default XML namespace, with a value determined at runtime. * @author JPEXS */ public class DXNSLateIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/EscXAttrIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/EscXAttrIns.java index 4a6e3ec33..64740421f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/EscXAttrIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/EscXAttrIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.EscapeXAttrAVM2Item; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * esc_xattr instruction - Escape XML attribute. * @author JPEXS */ public class EscXAttrIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/EscXElemIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/EscXElemIns.java index a81164bbf..118b4e470 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/EscXElemIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/instructions/xml/EscXElemIns.java @@ -26,10 +26,11 @@ import com.jpexs.decompiler.flash.abc.avm2.model.EscapeXElemAVM2Item; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TranslateStack; + import java.util.List; /** - * + * esc_xelems instruction - Escape XML element. * @author JPEXS */ public class EscXElemIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AVM2Item.java index a06a77955..1df12b964 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AVM2Item.java @@ -33,12 +33,13 @@ import com.jpexs.decompiler.graph.GraphSourceItem; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.SourceGenerator; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.ArrayList; import java.util.HashMap; import java.util.List; /** - * + * AVM2 item base class. * @author JPEXS */ public abstract class AVM2Item extends GraphTargetItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AlchemyLoadAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AlchemyLoadAVM2Item.java index ea0c8d62a..3c943eb9a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AlchemyLoadAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AlchemyLoadAVM2Item.java @@ -19,19 +19,14 @@ package com.jpexs.decompiler.flash.abc.avm2.model; import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.DottedChain; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Load value from memory. * @author JPEXS */ public class AlchemyLoadAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AlchemySignExtendAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AlchemySignExtendAVM2Item.java index d1e65260f..7d9e383ea 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AlchemySignExtendAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AlchemySignExtendAVM2Item.java @@ -19,18 +19,14 @@ package com.jpexs.decompiler.flash.abc.avm2.model; import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.DottedChain; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Sign extend value. * @author JPEXS */ public class AlchemySignExtendAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AlchemyStoreAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AlchemyStoreAVM2Item.java index 303aee829..f92928a2e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AlchemyStoreAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/AlchemyStoreAVM2Item.java @@ -19,18 +19,14 @@ package com.jpexs.decompiler.flash.abc.avm2.model; import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Store value to memory. * @author JPEXS */ public class AlchemyStoreAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ApplyTypeAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ApplyTypeAVM2Item.java index c658c730f..a8680cefc 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ApplyTypeAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ApplyTypeAVM2Item.java @@ -19,19 +19,15 @@ package com.jpexs.decompiler.flash.abc.avm2.model; import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.ArrayList; import java.util.List; import java.util.Objects; /** - * + * Apply type parameters to object. * @author JPEXS */ public class ApplyTypeAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/BooleanAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/BooleanAVM2Item.java index 192dd5996..bd707850f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/BooleanAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/BooleanAVM2Item.java @@ -20,18 +20,15 @@ import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; import java.util.Set; /** - * + * Boolean value. * @author JPEXS */ public class BooleanAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallAVM2Item.java index 9a168f79e..6720e6271 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallAVM2Item.java @@ -24,15 +24,11 @@ import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.Callable; import com.jpexs.decompiler.graph.model.LocalData; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.Set; + +import java.util.*; /** - * + * Call function. * @author JPEXS */ public class CallAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallMethodAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallMethodAVM2Item.java index d14c669c2..209d43945 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallMethodAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallMethodAVM2Item.java @@ -22,11 +22,12 @@ import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Call method. * @author JPEXS */ public class CallMethodAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallPropertyAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallPropertyAVM2Item.java index 1bb3b32fa..71d477ba3 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallPropertyAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallPropertyAVM2Item.java @@ -21,17 +21,14 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.abc.avm2.parser.script.AVM2SourceGenerator; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.SourceGenerator; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Call property. * @author JPEXS */ public class CallPropertyAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallStaticAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallStaticAVM2Item.java index df4c4a721..3e4393597 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallStaticAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallStaticAVM2Item.java @@ -22,11 +22,12 @@ import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Call static. * @author JPEXS */ public class CallStaticAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallSuperAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallSuperAVM2Item.java index d792d3ca7..f430ca56f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallSuperAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CallSuperAVM2Item.java @@ -22,11 +22,12 @@ import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Call super. * @author JPEXS */ public class CallSuperAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ClassAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ClassAVM2Item.java index 7a4f78b00..7ad5e04da 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ClassAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ClassAVM2Item.java @@ -25,7 +25,7 @@ import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.LocalData; /** - * + * Class. * @author JPEXS */ public class ClassAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CoerceAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CoerceAVM2Item.java index 4f2b6b577..e6d69e58f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CoerceAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/CoerceAVM2Item.java @@ -23,20 +23,16 @@ import com.jpexs.decompiler.flash.abc.avm2.parser.script.AVM2SourceGenerator; import com.jpexs.decompiler.flash.ecma.Null; import com.jpexs.decompiler.flash.ecma.Undefined; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; import com.jpexs.decompiler.graph.model.UnboundedTypeItem; + import java.util.List; import java.util.Objects; import java.util.Set; /** - * + * Coerce value to another type. * @author JPEXS */ public class CoerceAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConstructAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConstructAVM2Item.java index a6009f176..70d66b041 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConstructAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConstructAVM2Item.java @@ -21,11 +21,12 @@ import com.jpexs.decompiler.graph.GraphSourceItem; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Construct object. * @author JPEXS */ public class ConstructAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConstructPropAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConstructPropAVM2Item.java index 4940d771f..0746f3529 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConstructPropAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConstructPropAVM2Item.java @@ -21,11 +21,12 @@ import com.jpexs.decompiler.graph.GraphSourceItem; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Construct property. * @author JPEXS */ public class ConstructPropAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConstructSuperAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConstructSuperAVM2Item.java index f5bdf1aae..3ed0dd659 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConstructSuperAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConstructSuperAVM2Item.java @@ -20,18 +20,14 @@ import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Construct super. * @author JPEXS */ public class ConstructSuperAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConvertAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConvertAVM2Item.java index af693a91d..88d7b9900 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConvertAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ConvertAVM2Item.java @@ -23,11 +23,12 @@ import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.Objects; import java.util.Set; /** - * + * Convert value to another type. * @author JPEXS */ public class ConvertAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/DecLocalAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/DecLocalAVM2Item.java index 2998276de..e29a2c5fb 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/DecLocalAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/DecLocalAVM2Item.java @@ -23,7 +23,7 @@ import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.LocalData; /** - * + * Decrement local register by 1. * @author JPEXS */ public class DecLocalAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/DecrementAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/DecrementAVM2Item.java index 0d1dc4969..e22b8b524 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/DecrementAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/DecrementAVM2Item.java @@ -21,11 +21,12 @@ import com.jpexs.decompiler.graph.GraphSourceItem; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.Objects; import java.util.Set; /** - * + * Decrement value by 1. * @author JPEXS */ public class DecrementAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/DefaultXMLNamespace.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/DefaultXMLNamespace.java index ab216ee2b..3cdb6b48b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/DefaultXMLNamespace.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/DefaultXMLNamespace.java @@ -19,18 +19,14 @@ package com.jpexs.decompiler.flash.abc.avm2.model; import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Set default XML namespace. * @author JPEXS */ public class DefaultXMLNamespace extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/EscapeXAttrAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/EscapeXAttrAVM2Item.java index 37e31c163..e7030805e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/EscapeXAttrAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/EscapeXAttrAVM2Item.java @@ -19,17 +19,14 @@ package com.jpexs.decompiler.flash.abc.avm2.model; import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Escape XML attribute. * @author JPEXS */ public class EscapeXAttrAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/EscapeXElemAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/EscapeXElemAVM2Item.java index 9d488920e..aee62a041 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/EscapeXElemAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/EscapeXElemAVM2Item.java @@ -19,17 +19,14 @@ package com.jpexs.decompiler.flash.abc.avm2.model; import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Escape XML element. * @author JPEXS */ public class EscapeXElemAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FilteredCheckAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FilteredCheckAVM2Item.java index 2c1f47ce3..57dae7c9f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FilteredCheckAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FilteredCheckAVM2Item.java @@ -22,10 +22,11 @@ import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.Objects; /** - * + * Check whether object supports filtering. * @author JPEXS */ public class FilteredCheckAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FindDefAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FindDefAVM2Item.java index e9b344dca..4bbb60a24 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FindDefAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FindDefAVM2Item.java @@ -22,10 +22,11 @@ import com.jpexs.decompiler.graph.GraphSourceItem; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.Objects; /** - * + * Find definition. * @author JPEXS */ public class FindDefAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FindPropertyAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FindPropertyAVM2Item.java index ec0e92e1f..321a45d55 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FindPropertyAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FindPropertyAVM2Item.java @@ -20,18 +20,14 @@ import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.abc.avm2.parser.script.AVM2SourceGenerator; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Find property. * @author JPEXS */ public class FindPropertyAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FloatValueAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FloatValueAVM2Item.java index 70a90ca1a..167644925 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FloatValueAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FloatValueAVM2Item.java @@ -22,18 +22,15 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.abc.avm2.parser.script.AVM2SourceGenerator; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; import java.util.Set; /** - * + * Float value. * @author JPEXS */ public class FloatValueAVM2Item extends NumberValueAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FullMultinameAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FullMultinameAVM2Item.java index 35a9c97c5..6b8469c23 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FullMultinameAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/FullMultinameAVM2Item.java @@ -20,20 +20,13 @@ import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.avm2.AVM2ConstantPool; import com.jpexs.decompiler.flash.abc.types.Namespace; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.DottedChain; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Objects; -import java.util.Set; + +import java.util.*; /** - * + * Fully resolved multiname. * @author JPEXS */ public class FullMultinameAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetDescendantsAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetDescendantsAVM2Item.java index 4ade09054..d8db63f20 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetDescendantsAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetDescendantsAVM2Item.java @@ -20,18 +20,14 @@ import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.parser.script.AVM2SourceGenerator; import com.jpexs.decompiler.flash.abc.avm2.parser.script.NamespaceItem; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Objects; /** - * + * Get descendants. * @author JPEXS */ public class GetDescendantsAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetLexAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetLexAVM2Item.java index 42848f4bd..09fe3b25b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetLexAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetLexAVM2Item.java @@ -26,7 +26,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.Objects; /** - * + * Find and get property. * @author JPEXS */ public class GetLexAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetPropertyAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetPropertyAVM2Item.java index 08332d813..1c3b3d2d8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetPropertyAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetPropertyAVM2Item.java @@ -38,7 +38,7 @@ import java.util.Objects; import java.util.Set; /** - * + * Get property. * @author JPEXS */ public class GetPropertyAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetSlotAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetSlotAVM2Item.java index 5d2ad911f..d127983e7 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetSlotAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetSlotAVM2Item.java @@ -25,7 +25,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.Objects; /** - * + * Get slot. * @author JPEXS */ public class GetSlotAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetSuperAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetSuperAVM2Item.java index 2aea800fa..8ecbb9c03 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetSuperAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GetSuperAVM2Item.java @@ -24,7 +24,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.Objects; /** - * + * Get super object. * @author JPEXS */ public class GetSuperAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GlobalAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GlobalAVM2Item.java index 5d3e0d5e9..610679ccf 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GlobalAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/GlobalAVM2Item.java @@ -25,7 +25,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.HashMap; /** - * + * Global object. * @author JPEXS */ public class GlobalAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/HasNextAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/HasNextAVM2Item.java index b0c83a9bb..3fe045135 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/HasNextAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/HasNextAVM2Item.java @@ -30,7 +30,7 @@ import java.util.List; import java.util.Objects; /** - * + * Determine if the given object has any more properties. * @author JPEXS */ public class HasNextAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/InAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/InAVM2Item.java index 88eb9f6e5..91d16c3c0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/InAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/InAVM2Item.java @@ -30,7 +30,7 @@ import java.util.List; import java.util.Objects; /** - * + * Determine whether an object has a named property. * @author JPEXS */ public class InAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/IncLocalAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/IncLocalAVM2Item.java index edcc7b3d5..44eb7d5de 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/IncLocalAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/IncLocalAVM2Item.java @@ -23,7 +23,7 @@ import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.LocalData; /** - * + * Increment local register by 1. * @author JPEXS */ public class IncLocalAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/IncrementAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/IncrementAVM2Item.java index 0b20cd4a1..92d06850f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/IncrementAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/IncrementAVM2Item.java @@ -25,7 +25,7 @@ import java.util.Objects; import java.util.Set; /** - * + * Increment by 1. * @author JPEXS */ public class IncrementAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/InitPropertyAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/InitPropertyAVM2Item.java index 6d2bfb55f..9350befac 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/InitPropertyAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/InitPropertyAVM2Item.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.Objects; /** - * + * Initialize property. * @author JPEXS */ public class InitPropertyAVM2Item extends AVM2Item implements SetTypeAVM2Item, AssignmentAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/InitVectorAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/InitVectorAVM2Item.java index dae34ceb8..b58b78f9e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/InitVectorAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/InitVectorAVM2Item.java @@ -38,7 +38,7 @@ import java.util.List; import java.util.Objects; /** - * + * Initialize vector. * @author JPEXS */ public class InitVectorAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/IntegerValueAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/IntegerValueAVM2Item.java index a6788cab5..6ebff902c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/IntegerValueAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/IntegerValueAVM2Item.java @@ -36,7 +36,7 @@ import java.util.Objects; import java.util.Set; /** - * + * Integer value. * @author JPEXS */ public class IntegerValueAVM2Item extends NumberValueAVM2Item implements IntegerValueTypeItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/LocalRegAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/LocalRegAVM2Item.java index 93e064bf4..44f5b7486 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/LocalRegAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/LocalRegAVM2Item.java @@ -30,7 +30,7 @@ import java.util.List; import java.util.Set; /** - * + * Local register. * @author JPEXS */ public class LocalRegAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NameSpaceAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NameSpaceAVM2Item.java index 6ee6f9c9a..bfbb95f90 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NameSpaceAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NameSpaceAVM2Item.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import com.jpexs.helpers.Helper; /** - * + * Namespace. * @author JPEXS */ public class NameSpaceAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NameValuePair.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NameValuePair.java index 0e4722cbd..dc937c325 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NameValuePair.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NameValuePair.java @@ -25,7 +25,8 @@ import com.jpexs.decompiler.graph.model.TernarOpItem; import java.util.Objects; /** - * + * Name-value pair. + * (For usage in objects) * @author JPEXS */ public class NameValuePair extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NanAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NanAVM2Item.java index b4d118089..154583753 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NanAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NanAVM2Item.java @@ -31,7 +31,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.List; /** - * + * NaN value. * @author JPEXS */ public class NanAVM2Item extends AVM2Item implements SimpleValue { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NewActivationAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NewActivationAVM2Item.java index ac3df0dcd..64bd572d3 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NewActivationAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NewActivationAVM2Item.java @@ -29,7 +29,7 @@ import java.util.HashMap; import java.util.List; /** - * + * New activation. * @author JPEXS */ public class NewActivationAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NewArrayAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NewArrayAVM2Item.java index d95e768ed..642cd418d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NewArrayAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NewArrayAVM2Item.java @@ -34,7 +34,7 @@ import java.util.Objects; import java.util.Set; /** - * + * New array. * @author JPEXS */ public class NewArrayAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NewFunctionAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NewFunctionAVM2Item.java index b1b9d4715..4ce4867c8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NewFunctionAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NewFunctionAVM2Item.java @@ -35,7 +35,7 @@ import java.util.List; import java.util.Objects; /** - * + * New function. * @author JPEXS */ public class NewFunctionAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NextNameAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NextNameAVM2Item.java index 2863ff0c5..f0d073771 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NextNameAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NextNameAVM2Item.java @@ -30,7 +30,7 @@ import java.util.List; import java.util.Objects; /** - * + * Get the name of the next property when iterating over an object. * @author JPEXS */ public class NextNameAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NextValueAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NextValueAVM2Item.java index 8a11c7a86..0d9415954 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NextValueAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NextValueAVM2Item.java @@ -30,7 +30,7 @@ import java.util.List; import java.util.Objects; /** - * + * Get the value of the next property when iterating over an object. * @author JPEXS */ public class NextValueAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NullAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NullAVM2Item.java index 29306b74c..b996104c5 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NullAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NullAVM2Item.java @@ -33,7 +33,7 @@ import java.util.List; import java.util.Set; /** - * + * Null value. * @author JPEXS */ public class NullAVM2Item extends AVM2Item implements SimpleValue { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NumberValueAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NumberValueAVM2Item.java index 0fe268b6c..ff6c57bec 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NumberValueAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/NumberValueAVM2Item.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.graph.GraphSourceItem; import com.jpexs.decompiler.graph.SimpleValue; /** - * + * Number value. * @author JPEXS */ public abstract class NumberValueAVM2Item extends AVM2Item implements SimpleValue { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/PostDecrementAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/PostDecrementAVM2Item.java index aa324f6b0..27afb4e68 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/PostDecrementAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/PostDecrementAVM2Item.java @@ -31,7 +31,7 @@ import java.util.List; import java.util.Objects; /** - * + * Post decrement operation (x--). * @author JPEXS */ public class PostDecrementAVM2Item extends AVM2Item implements AssignmentAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/PostIncrementAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/PostIncrementAVM2Item.java index ed64c53e9..246827b55 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/PostIncrementAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/PostIncrementAVM2Item.java @@ -31,7 +31,7 @@ import java.util.List; import java.util.Objects; /** - * + * Post increment operation (x++). * @author JPEXS */ public class PostIncrementAVM2Item extends AVM2Item implements AssignmentAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/RegExpAvm2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/RegExpAvm2Item.java index 320ffd7e8..db9733905 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/RegExpAvm2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/RegExpAvm2Item.java @@ -43,7 +43,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; /** - * + * Regular expression. * @author JPEXS */ public class RegExpAvm2Item extends AVM2Item implements Callable { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ReturnValueAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ReturnValueAVM2Item.java index fa2600fb7..35ba7f869 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ReturnValueAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ReturnValueAVM2Item.java @@ -30,7 +30,7 @@ import java.util.List; import java.util.Objects; /** - * + * Return value from a function. * @author JPEXS */ public class ReturnValueAVM2Item extends AVM2Item implements ExitItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ReturnVoidAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ReturnVoidAVM2Item.java index 25b4bdeda..3c4f9ebae 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ReturnVoidAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ReturnVoidAVM2Item.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.List; /** - * + * Return from a function without a value. * @author JPEXS */ public class ReturnVoidAVM2Item extends AVM2Item implements ExitItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetLocalAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetLocalAVM2Item.java index f9afb93e4..c61db67e5 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetLocalAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetLocalAVM2Item.java @@ -32,7 +32,7 @@ import java.util.List; import java.util.Objects; /** - * + * Set local register value. * @author JPEXS */ public class SetLocalAVM2Item extends AVM2Item implements SetTypeAVM2Item, AssignmentAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetPropertyAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetPropertyAVM2Item.java index 8e284185e..1b04e8cbf 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetPropertyAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetPropertyAVM2Item.java @@ -34,7 +34,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.List; /** - * + * Set property value. * @author JPEXS */ public class SetPropertyAVM2Item extends AVM2Item implements SetTypeAVM2Item, AssignmentAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetSlotAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetSlotAVM2Item.java index 339b50056..4b3474750 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetSlotAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetSlotAVM2Item.java @@ -30,7 +30,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.Objects; /** - * + * Set slot value. * @author JPEXS */ public class SetSlotAVM2Item extends AVM2Item implements SetTypeAVM2Item, AssignmentAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetSuperAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetSuperAVM2Item.java index fbe8532da..89a73212e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetSuperAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetSuperAVM2Item.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.Objects; /** - * + * Set super property value. * @author JPEXS */ public class SetSuperAVM2Item extends AVM2Item implements SetTypeAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetTypeAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetTypeAVM2Item.java index 85b700b18..7e0359411 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetTypeAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/SetTypeAVM2Item.java @@ -20,24 +20,56 @@ import com.jpexs.decompiler.flash.abc.avm2.model.clauses.DeclarationAVM2Item; import com.jpexs.decompiler.graph.GraphTargetItem; /** - * + * Set type value. * @author JPEXS */ public interface SetTypeAVM2Item { + /** + * Gets object. + * @return Object + */ public GraphTargetItem getObject(); + /** + * Gets value. + * @return Value + */ public GraphTargetItem getValue(); + /** + * Gets declaration. + * @return Declaration + */ public DeclarationAVM2Item getDeclaration(); + /** + * Sets declaration. + * @param dec Declaration + */ public void setDeclaration(DeclarationAVM2Item dec); + /** + * Gets compound value. + * @return Compound value + */ public GraphTargetItem getCompoundValue(); + /** + * Sets compound value. + * @param value Compound value + */ public void setCompoundValue(GraphTargetItem value); + /** + * Sets compound operator. + * @param operator Compound operator + */ public void setCompoundOperator(String operator); + /** + * Gets compound operator. + * @return Compound operator + */ public String getCompoundOperator(); } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/StringAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/StringAVM2Item.java index 7d45443e4..d19212701 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/StringAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/StringAVM2Item.java @@ -34,7 +34,7 @@ import java.util.Objects; import java.util.Set; /** - * + * String value. * @author JPEXS */ public class StringAVM2Item extends AVM2Item implements SimpleValue { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ThisAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ThisAVM2Item.java index cc9240f78..0119e68ac 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ThisAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ThisAVM2Item.java @@ -34,7 +34,7 @@ import java.util.List; import java.util.Set; /** - * + * This object. * @author JPEXS */ public class ThisAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ThrowAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ThrowAVM2Item.java index 47071f9bc..823da9bf8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ThrowAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/ThrowAVM2Item.java @@ -30,7 +30,7 @@ import java.util.List; import java.util.Objects; /** - * + * Throw statement. * @author JPEXS */ public class ThrowAVM2Item extends AVM2Item implements ExitItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/UndefinedAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/UndefinedAVM2Item.java index 50afb50b7..c3285a527 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/UndefinedAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/UndefinedAVM2Item.java @@ -32,7 +32,7 @@ import java.util.List; import java.util.Set; /** - * + * Undefined value. * @author JPEXS */ public class UndefinedAVM2Item extends AVM2Item implements SimpleValue { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/UnparsedAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/UnparsedAVM2Item.java index 95de2ace4..11e4f6c2f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/UnparsedAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/UnparsedAVM2Item.java @@ -24,7 +24,8 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.Objects; /** - * + * Unparsed data. + * This just ouputs string as is, without any processing. * @author JPEXS */ public class UnparsedAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/WithAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/WithAVM2Item.java index 58c029252..de68f0154 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/WithAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/WithAVM2Item.java @@ -32,7 +32,7 @@ import java.util.List; import java.util.Objects; /** - * + * With statement. * @author JPEXS */ public class WithAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/WithEndAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/WithEndAVM2Item.java index 5618dded2..df08d4848 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/WithEndAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/WithEndAVM2Item.java @@ -25,7 +25,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.Objects; /** - * + * With end marker. * @author JPEXS */ public class WithEndAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/WithObjectAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/WithObjectAVM2Item.java index 6cf3ee4bd..386fffa9a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/WithObjectAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/WithObjectAVM2Item.java @@ -29,7 +29,7 @@ import java.util.List; import java.util.Objects; /** - * + * With object. * @author JPEXS */ public class WithObjectAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/XMLAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/XMLAVM2Item.java index 67ceef4df..f5485a966 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/XMLAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/XMLAVM2Item.java @@ -27,7 +27,7 @@ import java.util.List; import java.util.Objects; /** - * + * XML. * @author JPEXS */ public class XMLAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/AssignmentAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/AssignmentAVM2Item.java index 4f877cc60..443c7ce4a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/AssignmentAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/AssignmentAVM2Item.java @@ -17,7 +17,7 @@ package com.jpexs.decompiler.flash.abc.avm2.model.clauses; /** - * + * Assignment. * @author JPEXS */ public interface AssignmentAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/DeclarationAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/DeclarationAVM2Item.java index 086251802..613930c3b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/DeclarationAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/DeclarationAVM2Item.java @@ -18,13 +18,7 @@ package com.jpexs.decompiler.flash.abc.avm2.model.clauses; import com.jpexs.decompiler.flash.IdentifiersDeobfuscation; 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.FullMultinameAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.GetSlotAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.LocalRegAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.SetLocalAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.SetPropertyAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.SetSlotAVM2Item; +import com.jpexs.decompiler.flash.abc.avm2.model.*; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; import com.jpexs.decompiler.flash.helpers.hilight.HighlightData; import com.jpexs.decompiler.graph.DottedChain; @@ -34,7 +28,7 @@ import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.LocalData; /** - * + * Declaration. * @author JPEXS */ public class DeclarationAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/ExceptionAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/ExceptionAVM2Item.java index e26143b38..41d7b5d6f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/ExceptionAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/ExceptionAVM2Item.java @@ -24,7 +24,7 @@ import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.LocalData; /** - * + * Exception. * @author JPEXS */ public class ExceptionAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/FilterAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/FilterAVM2Item.java index 43ad61390..5db8ab0f0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/FilterAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/FilterAVM2Item.java @@ -25,7 +25,7 @@ import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.decompiler.graph.model.LocalData; /** - * + * Filter operation. * @author JPEXS */ public class FilterAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/ForEachInAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/ForEachInAVM2Item.java index 11807115b..f7919985a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/ForEachInAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/ForEachInAVM2Item.java @@ -22,22 +22,16 @@ import com.jpexs.decompiler.flash.abc.avm2.parser.script.AVM2SourceGenerator; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; import com.jpexs.decompiler.flash.helpers.LoopWithType; import com.jpexs.decompiler.flash.helpers.NulWriter; -import com.jpexs.decompiler.graph.Block; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.Loop; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.ContinueItem; import com.jpexs.decompiler.graph.model.LocalData; import com.jpexs.decompiler.graph.model.LoopItem; + import java.util.ArrayList; import java.util.List; /** - * + * For each in loop. * @author JPEXS */ public class ForEachInAVM2Item extends LoopItem implements Block { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/ForInAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/ForInAVM2Item.java index aeacd9f71..b76b3a1fd 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/ForInAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/ForInAVM2Item.java @@ -22,22 +22,16 @@ import com.jpexs.decompiler.flash.abc.avm2.parser.script.AVM2SourceGenerator; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; import com.jpexs.decompiler.flash.helpers.LoopWithType; import com.jpexs.decompiler.flash.helpers.NulWriter; -import com.jpexs.decompiler.graph.Block; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.Loop; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.ContinueItem; import com.jpexs.decompiler.graph.model.LocalData; import com.jpexs.decompiler.graph.model.LoopItem; + import java.util.ArrayList; import java.util.List; /** - * + * For in loop. * @author JPEXS */ public class ForInAVM2Item extends LoopItem implements Block { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/TryAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/TryAVM2Item.java index 867bdbd5b..998ec20d2 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/TryAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/clauses/TryAVM2Item.java @@ -39,7 +39,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Try block. * @author JPEXS */ public class TryAVM2Item extends AVM2Item implements Block { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/AddAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/AddAVM2Item.java index 4b886beb7..06385f9a1 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/AddAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/AddAVM2Item.java @@ -22,19 +22,16 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.flash.ecma.EcmaType; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.BinaryOpItem; import com.jpexs.decompiler.graph.model.CompoundableBinaryOp; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.ArrayList; import java.util.List; /** - * + * Add two values. * @author JPEXS */ public class AddAVM2Item extends BinaryOpItem implements CompoundableBinaryOp { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/AsTypeAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/AsTypeAVM2Item.java index 611eb7ac4..340c34d9a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/AsTypeAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/AsTypeAVM2Item.java @@ -24,11 +24,12 @@ import com.jpexs.decompiler.graph.GraphSourceItem; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.SourceGenerator; import com.jpexs.decompiler.graph.model.BinaryOpItem; + import java.util.ArrayList; import java.util.List; /** - * + * As type conversion. * @author JPEXS */ public class AsTypeAVM2Item extends BinaryOpItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitAndAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitAndAVM2Item.java index 71a3bcd8d..d39f89f3d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitAndAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitAndAVM2Item.java @@ -19,16 +19,13 @@ package com.jpexs.decompiler.flash.abc.avm2.model.operations; import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; + import java.util.ArrayList; import java.util.List; /** - * + * Bitwise AND. * @author JPEXS */ public class BitAndAVM2Item extends BitwiseBinaryOpAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitNotAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitNotAVM2Item.java index ddace5206..45f14e868 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitNotAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitNotAVM2Item.java @@ -21,17 +21,14 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.abc.avm2.model.IntegerValueAVM2Item; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; import com.jpexs.decompiler.graph.model.UnaryOpItem; + import java.util.List; /** - * + * Bitwise NOT. * @author JPEXS */ public class BitNotAVM2Item extends UnaryOpItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitOrAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitOrAVM2Item.java index ad075b55f..6eb0b92f0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitOrAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitOrAVM2Item.java @@ -19,16 +19,13 @@ package com.jpexs.decompiler.flash.abc.avm2.model.operations; import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; + import java.util.ArrayList; import java.util.List; /** - * + * Bitwise OR. * @author JPEXS */ public class BitOrAVM2Item extends BitwiseBinaryOpAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitXorAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitXorAVM2Item.java index 66a65da6e..2c99e9970 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitXorAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitXorAVM2Item.java @@ -19,16 +19,13 @@ package com.jpexs.decompiler.flash.abc.avm2.model.operations; import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; + import java.util.ArrayList; import java.util.List; /** - * + * Bitwise XOR. * @author JPEXS */ public class BitXorAVM2Item extends BitwiseBinaryOpAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitwiseBinaryOpAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitwiseBinaryOpAVM2Item.java index a1f674fc3..85954dc36 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitwiseBinaryOpAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/BitwiseBinaryOpAVM2Item.java @@ -25,7 +25,7 @@ import com.jpexs.decompiler.graph.model.CompoundableBinaryOp; import com.jpexs.decompiler.graph.model.LocalData; /** - * + * Bitwise binary operation. * @author JPEXS */ public abstract class BitwiseBinaryOpAVM2Item extends BinaryOpItem implements CompoundableBinaryOp { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/DeletePropertyAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/DeletePropertyAVM2Item.java index ad435dca8..53eddb24c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/DeletePropertyAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/DeletePropertyAVM2Item.java @@ -24,20 +24,15 @@ import com.jpexs.decompiler.flash.abc.avm2.parser.script.NamespacedAVM2Item; import com.jpexs.decompiler.flash.abc.avm2.parser.script.PropertyAVM2Item; import com.jpexs.decompiler.flash.abc.avm2.parser.script.UnresolvedAVM2Item; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.DottedChain; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.ArrayList; import java.util.List; import java.util.Objects; /** - * + * Delete property. * @author JPEXS */ public class DeletePropertyAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/DivideAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/DivideAVM2Item.java index 5f9797f23..938db4923 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/DivideAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/DivideAVM2Item.java @@ -20,19 +20,16 @@ import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.BinaryOpItem; import com.jpexs.decompiler.graph.model.CompoundableBinaryOp; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.ArrayList; import java.util.List; /** - * + * Divide two values. * @author JPEXS */ public class DivideAVM2Item extends BinaryOpItem implements CompoundableBinaryOp { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/EqAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/EqAVM2Item.java index a42ed317e..8b6861c4b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/EqAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/EqAVM2Item.java @@ -20,19 +20,15 @@ import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.ecma.EcmaScript; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.EqualsTypeItem; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.BinaryOpItem; import com.jpexs.decompiler.graph.model.LogicalOpItem; + import java.util.ArrayList; import java.util.List; /** - * + * Equality. * @author JPEXS */ public class EqAVM2Item extends BinaryOpItem implements LogicalOpItem, IfCondition, EqualsTypeItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/GeAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/GeAVM2Item.java index 6ce6a01ff..7f02569cc 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/GeAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/GeAVM2Item.java @@ -21,18 +21,15 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.flash.ecma.Undefined; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.BinaryOpItem; import com.jpexs.decompiler.graph.model.LogicalOpItem; + import java.util.ArrayList; import java.util.List; /** - * + * Greater or equal. * @author JPEXS */ public class GeAVM2Item extends BinaryOpItem implements LogicalOpItem, IfCondition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/GtAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/GtAVM2Item.java index c87bad732..06bd513b5 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/GtAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/GtAVM2Item.java @@ -32,7 +32,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Greater than. * @author JPEXS */ public class GtAVM2Item extends BinaryOpItem implements LogicalOpItem, IfCondition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/IfCondition.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/IfCondition.java index b5fc2dcd0..facafb234 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/IfCondition.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/IfCondition.java @@ -19,12 +19,20 @@ package com.jpexs.decompiler.flash.abc.avm2.model.operations; import com.jpexs.decompiler.graph.model.BinaryOp; /** - * + * If condition interface. * @author JPEXS */ public interface IfCondition extends BinaryOp { + /** + * Gets if definition opcode. + * @return opcode + */ public int getIfDefinition(); + /** + * Gets if not definition opcode. + * @return opcode + */ public int getIfNotDefinition(); } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/InAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/InAVM2Item.java index 508b50df4..c79af2642 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/InAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/InAVM2Item.java @@ -29,7 +29,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * In operator. * @author JPEXS */ public class InAVM2Item extends BinaryOpItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/InstanceOfAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/InstanceOfAVM2Item.java index 1b8bb7149..4c47821b0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/InstanceOfAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/InstanceOfAVM2Item.java @@ -29,7 +29,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Check if an object is an instance of a class. * @author JPEXS */ public class InstanceOfAVM2Item extends BinaryOpItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/IsTypeAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/IsTypeAVM2Item.java index de38181dd..5bd302c83 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/IsTypeAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/IsTypeAVM2Item.java @@ -29,7 +29,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Check if an object is an instance of a class. * @author JPEXS */ public class IsTypeAVM2Item extends BinaryOpItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/LShiftAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/LShiftAVM2Item.java index 2f0f1b83e..46b25e364 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/LShiftAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/LShiftAVM2Item.java @@ -30,7 +30,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Left shift. * @author JPEXS */ public class LShiftAVM2Item extends BinaryOpItem implements CompoundableBinaryOp { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/LeAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/LeAVM2Item.java index f764518a1..428ff61f2 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/LeAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/LeAVM2Item.java @@ -32,7 +32,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Less or equal. * @author JPEXS */ public class LeAVM2Item extends BinaryOpItem implements LogicalOpItem, IfCondition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/LtAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/LtAVM2Item.java index 22d72e890..2618695a8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/LtAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/LtAVM2Item.java @@ -32,7 +32,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Less than. * @author JPEXS */ public class LtAVM2Item extends BinaryOpItem implements LogicalOpItem, IfCondition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/ModuloAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/ModuloAVM2Item.java index e0838c027..baefc3d8a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/ModuloAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/ModuloAVM2Item.java @@ -32,7 +32,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Modulo. * @author JPEXS */ public class ModuloAVM2Item extends BinaryOpItem implements CompoundableBinaryOp { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/MultiplyAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/MultiplyAVM2Item.java index fd1b9e19c..cf161d321 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/MultiplyAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/MultiplyAVM2Item.java @@ -32,7 +32,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Multiply. * @author JPEXS */ public class MultiplyAVM2Item extends BinaryOpItem implements CompoundableBinaryOp { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/NegAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/NegAVM2Item.java index 2bbaa73f1..e6a968c54 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/NegAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/NegAVM2Item.java @@ -28,7 +28,7 @@ import com.jpexs.decompiler.graph.model.UnaryOpItem; import java.util.List; /** - * + * Negate. * @author JPEXS */ public class NegAVM2Item extends UnaryOpItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/NeqAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/NeqAVM2Item.java index 88b70cb64..ad9d80776 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/NeqAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/NeqAVM2Item.java @@ -32,7 +32,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Not equal. * @author JPEXS */ public class NeqAVM2Item extends BinaryOpItem implements LogicalOpItem, IfCondition, NotEqualsTypeItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/PreDecrementAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/PreDecrementAVM2Item.java index 7444b209a..8f20450d7 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/PreDecrementAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/PreDecrementAVM2Item.java @@ -28,7 +28,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Pre decrement. * @author JPEXS */ public class PreDecrementAVM2Item extends UnaryOpItem implements AssignmentAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/PreIncrementAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/PreIncrementAVM2Item.java index 14430c397..9d7bc4887 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/PreIncrementAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/PreIncrementAVM2Item.java @@ -27,7 +27,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Pre increment. * @author JPEXS */ public class PreIncrementAVM2Item extends UnaryOpItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/RShiftAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/RShiftAVM2Item.java index f3a9001db..deb591fdc 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/RShiftAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/RShiftAVM2Item.java @@ -30,7 +30,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Right shift. * @author JPEXS */ public class RShiftAVM2Item extends BinaryOpItem implements CompoundableBinaryOp { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/StrictEqAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/StrictEqAVM2Item.java index b3f8fc0cd..43ac6473b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/StrictEqAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/StrictEqAVM2Item.java @@ -32,7 +32,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Strict equal. * @author JPEXS */ public class StrictEqAVM2Item extends BinaryOpItem implements LogicalOpItem, IfCondition, EqualsTypeItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/StrictNeqAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/StrictNeqAVM2Item.java index e26ed7168..eed20b6f4 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/StrictNeqAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/StrictNeqAVM2Item.java @@ -32,7 +32,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Strict not equal. * @author JPEXS */ public class StrictNeqAVM2Item extends BinaryOpItem implements LogicalOpItem, IfCondition, NotEqualsTypeItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/SubtractAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/SubtractAVM2Item.java index 34afdf226..2e782b7d1 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/SubtractAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/SubtractAVM2Item.java @@ -32,7 +32,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Subtract. * @author JPEXS */ public class SubtractAVM2Item extends BinaryOpItem implements CompoundableBinaryOp { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/TypeOfAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/TypeOfAVM2Item.java index 704029991..8386a25f0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/TypeOfAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/TypeOfAVM2Item.java @@ -32,7 +32,7 @@ import java.util.List; import java.util.Set; /** - * + * Get type of value. * @author JPEXS */ public class TypeOfAVM2Item extends UnaryOpItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/URShiftAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/URShiftAVM2Item.java index e907c5b75..b65c9f516 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/URShiftAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/model/operations/URShiftAVM2Item.java @@ -30,7 +30,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Unsigned right shift. * @author JPEXS */ public class URShiftAVM2Item extends BinaryOpItem implements CompoundableBinaryOp { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/AVM2ParseException.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/AVM2ParseException.java index e5ea96f6d..fe5dce01a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/AVM2ParseException.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/AVM2ParseException.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.parser; import com.jpexs.decompiler.flash.ParseException; /** - * + * Parse exception for AVM2 parser. * @author JPEXS */ public class AVM2ParseException extends ParseException { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/pcode/ASM3Parser.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/pcode/ASM3Parser.java index 13ab7cc72..d64a45893 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/pcode/ASM3Parser.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/pcode/ASM3Parser.java @@ -25,37 +25,17 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; import com.jpexs.decompiler.flash.abc.avm2.instructions.UnknownInstruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.stack.PushShortIns; import com.jpexs.decompiler.flash.abc.avm2.parser.AVM2ParseException; -import com.jpexs.decompiler.flash.abc.types.ABCException; -import com.jpexs.decompiler.flash.abc.types.Float4; -import com.jpexs.decompiler.flash.abc.types.InstanceInfo; -import com.jpexs.decompiler.flash.abc.types.MetadataInfo; -import com.jpexs.decompiler.flash.abc.types.MethodBody; -import com.jpexs.decompiler.flash.abc.types.MethodInfo; -import com.jpexs.decompiler.flash.abc.types.Multiname; -import com.jpexs.decompiler.flash.abc.types.Namespace; -import com.jpexs.decompiler.flash.abc.types.NamespaceSet; -import com.jpexs.decompiler.flash.abc.types.ValueKind; -import com.jpexs.decompiler.flash.abc.types.traits.Trait; -import com.jpexs.decompiler.flash.abc.types.traits.TraitClass; -import com.jpexs.decompiler.flash.abc.types.traits.TraitFunction; -import com.jpexs.decompiler.flash.abc.types.traits.TraitMethodGetterSetter; -import com.jpexs.decompiler.flash.abc.types.traits.TraitSlotConst; -import com.jpexs.decompiler.flash.abc.types.traits.Traits; +import com.jpexs.decompiler.flash.abc.types.*; +import com.jpexs.decompiler.flash.abc.types.traits.*; import com.jpexs.decompiler.flash.configuration.Configuration; import com.jpexs.helpers.Helper; + import java.io.IOException; import java.io.Reader; -import java.util.AbstractMap; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Locale; -import java.util.Map; -import java.util.Stack; +import java.util.*; /** - * + * Parses AVM2 P-code. * @author JPEXS */ public class ASM3Parser { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/pcode/ParsedSymbol.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/pcode/ParsedSymbol.java index c48341c89..36ff9266f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/pcode/ParsedSymbol.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/pcode/ParsedSymbol.java @@ -17,7 +17,7 @@ package com.jpexs.decompiler.flash.abc.avm2.parser.pcode; /** - * + * AVM2 P-code parser symbol. * @author JPEXS */ public class ParsedSymbol { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AVM2SourceGenerator.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AVM2SourceGenerator.java index 8587ef08c..147afb15e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AVM2SourceGenerator.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AVM2SourceGenerator.java @@ -29,96 +29,34 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.jumps.JumpIns; import com.jpexs.decompiler.flash.abc.avm2.instructions.localregs.KillIns; import com.jpexs.decompiler.flash.abc.avm2.instructions.other.ReturnVoidIns; import com.jpexs.decompiler.flash.abc.avm2.instructions.stack.PopScopeIns; -import com.jpexs.decompiler.flash.abc.avm2.model.AVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.ApplyTypeAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.BooleanAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.FloatValueAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.GetDescendantsAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.IntegerValueAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.LocalRegAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.NameValuePair; -import com.jpexs.decompiler.flash.abc.avm2.model.NanAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.NewObjectAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.NullAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.ReturnValueAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.ReturnVoidAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.StringAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.ThrowAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.UndefinedAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.WithAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.WithObjectAVM2Item; +import com.jpexs.decompiler.flash.abc.avm2.model.*; import com.jpexs.decompiler.flash.abc.avm2.model.clauses.ForEachInAVM2Item; import com.jpexs.decompiler.flash.abc.avm2.model.clauses.ForInAVM2Item; import com.jpexs.decompiler.flash.abc.avm2.model.clauses.TryAVM2Item; import com.jpexs.decompiler.flash.abc.avm2.model.operations.IfCondition; import com.jpexs.decompiler.flash.abc.avm2.parser.AVM2ParseException; import com.jpexs.decompiler.flash.abc.avm2.parser.script.AbcIndexing.ClassIndex; -import com.jpexs.decompiler.flash.abc.types.ABCException; -import com.jpexs.decompiler.flash.abc.types.ClassInfo; -import com.jpexs.decompiler.flash.abc.types.ConvertData; -import com.jpexs.decompiler.flash.abc.types.InstanceInfo; -import com.jpexs.decompiler.flash.abc.types.MetadataInfo; -import com.jpexs.decompiler.flash.abc.types.MethodBody; -import com.jpexs.decompiler.flash.abc.types.MethodInfo; -import com.jpexs.decompiler.flash.abc.types.Multiname; -import com.jpexs.decompiler.flash.abc.types.Namespace; -import com.jpexs.decompiler.flash.abc.types.ScriptInfo; -import com.jpexs.decompiler.flash.abc.types.ValueKind; -import com.jpexs.decompiler.flash.abc.types.traits.Trait; -import com.jpexs.decompiler.flash.abc.types.traits.TraitClass; -import com.jpexs.decompiler.flash.abc.types.traits.TraitFunction; -import com.jpexs.decompiler.flash.abc.types.traits.TraitMethodGetterSetter; -import com.jpexs.decompiler.flash.abc.types.traits.TraitSlotConst; -import com.jpexs.decompiler.flash.abc.types.traits.Traits; +import com.jpexs.decompiler.flash.abc.types.*; +import com.jpexs.decompiler.flash.abc.types.traits.*; import com.jpexs.decompiler.flash.configuration.Configuration; import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.decompiler.flash.exporters.modes.ScriptExportMode; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; import com.jpexs.decompiler.flash.helpers.NulWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.DottedChain; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.Loop; -import com.jpexs.decompiler.graph.ScopeStack; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; -import com.jpexs.decompiler.graph.model.AndItem; -import com.jpexs.decompiler.graph.model.BreakItem; -import com.jpexs.decompiler.graph.model.CommaExpressionItem; -import com.jpexs.decompiler.graph.model.ContinueItem; -import com.jpexs.decompiler.graph.model.DefaultItem; -import com.jpexs.decompiler.graph.model.DoWhileItem; -import com.jpexs.decompiler.graph.model.DuplicateItem; -import com.jpexs.decompiler.graph.model.FalseItem; -import com.jpexs.decompiler.graph.model.ForItem; -import com.jpexs.decompiler.graph.model.IfItem; -import com.jpexs.decompiler.graph.model.LocalData; -import com.jpexs.decompiler.graph.model.NotItem; -import com.jpexs.decompiler.graph.model.OrItem; -import com.jpexs.decompiler.graph.model.PopItem; -import com.jpexs.decompiler.graph.model.PushItem; -import com.jpexs.decompiler.graph.model.SwitchItem; -import com.jpexs.decompiler.graph.model.TernarOpItem; -import com.jpexs.decompiler.graph.model.TrueItem; -import com.jpexs.decompiler.graph.model.WhileItem; +import com.jpexs.decompiler.graph.*; +import com.jpexs.decompiler.graph.model.*; import com.jpexs.helpers.Reference; + import java.io.ByteArrayOutputStream; import java.io.IOException; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Objects; +import java.util.*; import java.util.logging.Level; import java.util.logging.Logger; import java.util.regex.Matcher; import java.util.regex.Pattern; /** - * + * AVM2 bytecode generator. * @author JPEXS */ public class AVM2SourceGenerator implements SourceGenerator { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AbcIndexing.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AbcIndexing.java index 73f7ec9f9..76a6504a4 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AbcIndexing.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AbcIndexing.java @@ -21,36 +21,19 @@ import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.avm2.AVM2ConstantPool; import com.jpexs.decompiler.flash.abc.avm2.model.ApplyTypeAVM2Item; import com.jpexs.decompiler.flash.abc.avm2.model.NullAVM2Item; -import com.jpexs.decompiler.flash.abc.types.ClassInfo; -import com.jpexs.decompiler.flash.abc.types.InstanceInfo; -import com.jpexs.decompiler.flash.abc.types.Multiname; -import com.jpexs.decompiler.flash.abc.types.Namespace; -import com.jpexs.decompiler.flash.abc.types.ValueKind; -import com.jpexs.decompiler.flash.abc.types.traits.Trait; -import com.jpexs.decompiler.flash.abc.types.traits.TraitClass; -import com.jpexs.decompiler.flash.abc.types.traits.TraitFunction; -import com.jpexs.decompiler.flash.abc.types.traits.TraitMethodGetterSetter; -import com.jpexs.decompiler.flash.abc.types.traits.TraitSlotConst; -import com.jpexs.decompiler.flash.abc.types.traits.Traits; +import com.jpexs.decompiler.flash.abc.types.*; +import com.jpexs.decompiler.flash.abc.types.traits.*; import com.jpexs.decompiler.flash.tags.ABCContainerTag; import com.jpexs.decompiler.graph.DottedChain; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.TypeItem; import com.jpexs.helpers.Reference; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.HashSet; -import java.util.LinkedHashMap; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.Set; -import java.util.WeakHashMap; + +import java.util.*; /** * Indexing of ABCs for faster access. Indexes ABC classes for faster class and - * property resolving + * property resolving. * * @author JPEXS */ diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ActionScript3Parser.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ActionScript3Parser.java index e90056fe9..c6f7f8ab7 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ActionScript3Parser.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ActionScript3Parser.java @@ -19,119 +19,32 @@ package com.jpexs.decompiler.flash.abc.avm2.parser.script; import com.jpexs.decompiler.flash.SWF; import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.ABC; -import com.jpexs.decompiler.flash.abc.avm2.model.ApplyTypeAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.BooleanAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.CoerceAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.ConstructSuperAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.DefaultXMLNamespace; -import com.jpexs.decompiler.flash.abc.avm2.model.EscapeXAttrAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.EscapeXElemAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.FloatValueAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.GetDescendantsAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.GetPropertyAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.HasNextAVM2Item; import com.jpexs.decompiler.flash.abc.avm2.model.InAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.InitVectorAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.IntegerValueAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.LocalRegAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.NameValuePair; -import com.jpexs.decompiler.flash.abc.avm2.model.NanAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.NewActivationAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.NewArrayAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.NewObjectAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.NextNameAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.NullAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.PostDecrementAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.PostIncrementAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.RegExpAvm2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.ReturnValueAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.ReturnVoidAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.StringAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.ThrowAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.UndefinedAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.WithAVM2Item; +import com.jpexs.decompiler.flash.abc.avm2.model.*; import com.jpexs.decompiler.flash.abc.avm2.model.clauses.ExceptionAVM2Item; import com.jpexs.decompiler.flash.abc.avm2.model.clauses.ForEachInAVM2Item; import com.jpexs.decompiler.flash.abc.avm2.model.clauses.ForInAVM2Item; import com.jpexs.decompiler.flash.abc.avm2.model.clauses.TryAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.AddAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.AsTypeAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.BitAndAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.BitNotAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.BitOrAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.BitXorAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.DeletePropertyAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.DivideAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.EqAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.GeAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.GtAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.InstanceOfAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.IsTypeAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.LShiftAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.LeAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.LtAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.ModuloAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.MultiplyAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.NegAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.NeqAVM2Item; -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.avm2.model.operations.RShiftAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.StrictEqAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.StrictNeqAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.SubtractAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.TypeOfAVM2Item; -import com.jpexs.decompiler.flash.abc.avm2.model.operations.URShiftAVM2Item; +import com.jpexs.decompiler.flash.abc.avm2.model.operations.*; import com.jpexs.decompiler.flash.abc.avm2.parser.AVM2ParseException; import com.jpexs.decompiler.flash.abc.types.Namespace; import com.jpexs.decompiler.flash.abc.types.ScriptInfo; import com.jpexs.decompiler.flash.action.swf4.ActionIf; import com.jpexs.decompiler.flash.tags.ABCContainerTag; import com.jpexs.decompiler.flash.tags.Tag; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.DottedChain; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.Loop; -import com.jpexs.decompiler.graph.TypeItem; -import com.jpexs.decompiler.graph.model.AndItem; -import com.jpexs.decompiler.graph.model.BlockItem; -import com.jpexs.decompiler.graph.model.BreakItem; -import com.jpexs.decompiler.graph.model.CommaExpressionItem; -import com.jpexs.decompiler.graph.model.ContinueItem; -import com.jpexs.decompiler.graph.model.DefaultItem; -import com.jpexs.decompiler.graph.model.DoWhileItem; -import com.jpexs.decompiler.graph.model.DuplicateItem; -import com.jpexs.decompiler.graph.model.EmptyCommand; -import com.jpexs.decompiler.graph.model.ForItem; -import com.jpexs.decompiler.graph.model.IfItem; -import com.jpexs.decompiler.graph.model.NotItem; -import com.jpexs.decompiler.graph.model.OrItem; -import com.jpexs.decompiler.graph.model.ParenthesisItem; -import com.jpexs.decompiler.graph.model.PopItem; -import com.jpexs.decompiler.graph.model.PushItem; -import com.jpexs.decompiler.graph.model.SwitchItem; -import com.jpexs.decompiler.graph.model.TernarOpItem; -import com.jpexs.decompiler.graph.model.TrueItem; -import com.jpexs.decompiler.graph.model.WhileItem; +import com.jpexs.decompiler.graph.*; +import com.jpexs.decompiler.graph.model.*; import com.jpexs.helpers.Helper; import com.jpexs.helpers.Reference; import com.jpexs.helpers.utf8.Utf8Helper; -import java.io.BufferedOutputStream; -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.OutputStream; -import java.util.AbstractMap; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Stack; + +import java.io.*; +import java.util.*; import java.util.logging.Level; import java.util.logging.Logger; /** - * + * ActionScript 3 parser. * @author JPEXS */ public class ActionScript3Parser { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AssignableAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AssignableAVM2Item.java index 6cb9bebe4..3bc537d7f 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AssignableAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/AssignableAVM2Item.java @@ -27,11 +27,12 @@ import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.SourceGenerator; import com.jpexs.decompiler.graph.model.OrItem; import com.jpexs.helpers.Reference; + import java.util.ArrayList; import java.util.List; /** - * + * Assignable. * @author JPEXS */ public abstract class AssignableAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/BreakJumpIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/BreakJumpIns.java index fc8870715..e60f55b30 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/BreakJumpIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/BreakJumpIns.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.parser.script; import com.jpexs.decompiler.flash.abc.avm2.instructions.jumps.JumpIns; /** - * + * Jump instruction for break statement in loops. * @author JPEXS */ public class BreakJumpIns extends JumpIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/CallAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/CallAVM2Item.java index 9438a0729..b4abf3499 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/CallAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/CallAVM2Item.java @@ -23,20 +23,15 @@ import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; import com.jpexs.decompiler.flash.abc.avm2.model.AVM2Item; import com.jpexs.decompiler.flash.abc.types.ValueKind; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.DottedChain; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeFunctionItem; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; import com.jpexs.helpers.Reference; + import java.util.ArrayList; import java.util.List; /** - * + * Call. * @author JPEXS */ public class CallAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ClassAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ClassAVM2Item.java index f0dbfb852..99caaa563 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ClassAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ClassAVM2Item.java @@ -18,19 +18,16 @@ package com.jpexs.decompiler.flash.abc.avm2.parser.script; import com.jpexs.decompiler.flash.abc.avm2.model.AVM2Item; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.Block; -import com.jpexs.decompiler.graph.DottedChain; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.GraphTargetVisitorInterface; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.ContinueItem; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.ArrayList; import java.util.List; import java.util.Map; /** - * + * Class. * @author JPEXS */ public class ClassAVM2Item extends AVM2Item implements Block { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ConstAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ConstAVM2Item.java index e4723419e..4c00aa31a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ConstAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ConstAVM2Item.java @@ -20,11 +20,12 @@ import com.jpexs.decompiler.flash.abc.avm2.model.AVM2Item; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; import com.jpexs.decompiler.graph.GraphTargetItem; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Map; /** - * + * Const. * @author JPEXS */ public class ConstAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ConstructSomethingAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ConstructSomethingAVM2Item.java index df52f3233..02e0e39ff 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ConstructSomethingAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ConstructSomethingAVM2Item.java @@ -19,15 +19,12 @@ package com.jpexs.decompiler.flash.abc.avm2.parser.script; import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instructions; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; + import java.util.List; /** - * + * Construct something. * @author JPEXS */ public class ConstructSomethingAVM2Item extends CallAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ContinueJumpIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ContinueJumpIns.java index e16b8da52..f5eef5268 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ContinueJumpIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ContinueJumpIns.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.parser.script; import com.jpexs.decompiler.flash.abc.avm2.instructions.jumps.JumpIns; /** - * + * Jump instruction for continue statement in loops. * @author JPEXS */ public class ContinueJumpIns extends JumpIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ExceptionMarkAVM2Instruction.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ExceptionMarkAVM2Instruction.java index c5156e19a..6395d4f41 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ExceptionMarkAVM2Instruction.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ExceptionMarkAVM2Instruction.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.flash.SWFInputStream; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; /** - * + * Exception mark instruction. * @author JPEXS */ public class ExceptionMarkAVM2Instruction extends AVM2Instruction { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ExceptionMarkIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ExceptionMarkIns.java index 5a2faae0c..fdf9430bd 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ExceptionMarkIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ExceptionMarkIns.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.parser.script; import com.jpexs.decompiler.flash.abc.avm2.instructions.InstructionDefinition; /** - * + * Exception mark instruction. * @author JPEXS */ public class ExceptionMarkIns extends InstructionDefinition { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/FinallyJumpIns.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/FinallyJumpIns.java index 242bf4cfd..078cff714 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/FinallyJumpIns.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/FinallyJumpIns.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.parser.script; import com.jpexs.decompiler.flash.abc.avm2.instructions.jumps.JumpIns; /** - * + * Finally jump instruction. * @author JPEXS */ public class FinallyJumpIns extends JumpIns { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/FunctionAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/FunctionAVM2Item.java index 9e2b17f92..871b13cba 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/FunctionAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/FunctionAVM2Item.java @@ -19,18 +19,14 @@ package com.jpexs.decompiler.flash.abc.avm2.parser.script; import com.jpexs.decompiler.flash.SourceGeneratorLocalData; import com.jpexs.decompiler.flash.abc.avm2.model.AVM2Item; import com.jpexs.decompiler.flash.helpers.GraphTextWriter; -import com.jpexs.decompiler.graph.CompilationException; -import com.jpexs.decompiler.graph.DottedChain; -import com.jpexs.decompiler.graph.GraphSourceItem; -import com.jpexs.decompiler.graph.GraphTargetItem; -import com.jpexs.decompiler.graph.SourceGenerator; -import com.jpexs.decompiler.graph.TypeItem; +import com.jpexs.decompiler.graph.*; import com.jpexs.decompiler.graph.model.LocalData; + import java.util.List; import java.util.Map; /** - * + * Function. * @author JPEXS */ public class FunctionAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/GetterAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/GetterAVM2Item.java index 3f95729e8..9b9b6342b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/GetterAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/GetterAVM2Item.java @@ -21,7 +21,7 @@ import java.util.List; import java.util.Map; /** - * + * Getter. * @author JPEXS */ public class GetterAVM2Item extends MethodAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ImportedSlotConstItem.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ImportedSlotConstItem.java index 7adff9c05..5ac502aeb 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ImportedSlotConstItem.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ImportedSlotConstItem.java @@ -33,7 +33,7 @@ import java.util.Arrays; import java.util.List; /** - * + * Imported slot. * @author JPEXS */ public class ImportedSlotConstItem extends AssignableAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/IndexAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/IndexAVM2Item.java index ca090aa58..e20833be0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/IndexAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/IndexAVM2Item.java @@ -34,7 +34,7 @@ import java.util.List; import java.util.Objects; /** - * + * Index. * @author JPEXS */ public class IndexAVM2Item extends AssignableAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/InterfaceAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/InterfaceAVM2Item.java index 944e6e75c..51cc1aad5 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/InterfaceAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/InterfaceAVM2Item.java @@ -26,7 +26,7 @@ import java.util.List; import java.util.Map; /** - * + * Interface. * @author JPEXS */ public class InterfaceAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/LexBufferer.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/LexBufferer.java index 7733a7bfa..f033eccb9 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/LexBufferer.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/LexBufferer.java @@ -20,7 +20,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Lexical analyzer bufferer. It stores all parsed symbols and can push them back. * @author JPEXS */ public class LexBufferer implements LexListener { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/LexListener.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/LexListener.java index 17e35c5ef..f490c2617 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/LexListener.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/LexListener.java @@ -17,7 +17,7 @@ package com.jpexs.decompiler.flash.abc.avm2.parser.script; /** - * + * Listener for lexical analysis. * @author JPEXS */ public interface LexListener { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/MethodAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/MethodAVM2Item.java index ff1849a36..e25657bce 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/MethodAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/MethodAVM2Item.java @@ -23,7 +23,7 @@ import java.util.List; import java.util.Map; /** - * + * Method. * @author JPEXS */ public class MethodAVM2Item extends FunctionAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/NameAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/NameAVM2Item.java index a330ef78c..3a273456e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/NameAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/NameAVM2Item.java @@ -43,7 +43,7 @@ import java.util.List; import java.util.Objects; /** - * + * Name. * @author JPEXS */ public class NameAVM2Item extends AssignableAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/NamespaceItem.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/NamespaceItem.java index f6ad6a724..a73ba0cd5 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/NamespaceItem.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/NamespaceItem.java @@ -29,7 +29,7 @@ import java.util.List; import java.util.Objects; /** - * + * Namespace. * @author JPEXS */ public class NamespaceItem { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/NamespacedAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/NamespacedAVM2Item.java index 2b2da7b73..9ab20ca46 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/NamespacedAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/NamespacedAVM2Item.java @@ -36,7 +36,7 @@ import java.util.List; import java.util.Objects; /** - * + * Namespaced. * @author JPEXS */ public class NamespacedAVM2Item extends AssignableAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/PackageAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/PackageAVM2Item.java index 9c865cf22..16040c273 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/PackageAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/PackageAVM2Item.java @@ -26,7 +26,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Package. * @author JPEXS */ public class PackageAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ParsedSymbol.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ParsedSymbol.java index fc2ca201a..189d85333 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ParsedSymbol.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/ParsedSymbol.java @@ -17,7 +17,7 @@ package com.jpexs.decompiler.flash.abc.avm2.parser.script; /** - * + * ActionScript 3 parsed symbol. * @author JPEXS */ public class ParsedSymbol { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/PropertyAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/PropertyAVM2Item.java index 9f6ddb334..6f0096487 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/PropertyAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/PropertyAVM2Item.java @@ -50,7 +50,7 @@ import java.util.logging.Level; import java.util.logging.Logger; /** - * + * Property. * @author JPEXS */ public class PropertyAVM2Item extends AssignableAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SetterAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SetterAVM2Item.java index f458ee5c5..a7d4ff74b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SetterAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SetterAVM2Item.java @@ -21,7 +21,7 @@ import java.util.List; import java.util.Map; /** - * + * Setter. * @author JPEXS */ public class SetterAVM2Item extends MethodAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SlotAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SlotAVM2Item.java index caee5d0f7..fd599719a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SlotAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SlotAVM2Item.java @@ -24,7 +24,7 @@ import java.util.List; import java.util.Map; /** - * + * Slot. * @author JPEXS */ public class SlotAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SymbolGroup.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SymbolGroup.java index f4bf6a5c3..4f7b25f22 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SymbolGroup.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SymbolGroup.java @@ -17,7 +17,7 @@ package com.jpexs.decompiler.flash.abc.avm2.parser.script; /** - * + * ActionScript 3 parsed symbol group. * @author JPEXS */ public enum SymbolGroup { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SymbolType.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SymbolType.java index 76ca25acf..c430c853e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SymbolType.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/SymbolType.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.avm2.parser.script; import com.jpexs.decompiler.graph.GraphTargetItem; /** - * + * ActionScript 3 parsed symbol type. * @author JPEXS */ public enum SymbolType { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/UnresolvedAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/UnresolvedAVM2Item.java index c2511fa8a..a9fa46792 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/UnresolvedAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/UnresolvedAVM2Item.java @@ -44,7 +44,8 @@ import java.util.List; import java.util.Objects; /** - * + * Unresolved - variable, property, type, etc. + * To be resolved later. * @author JPEXS */ public class UnresolvedAVM2Item extends AssignableAVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/XMLAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/XMLAVM2Item.java index ffadaf90e..800739441 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/XMLAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/XMLAVM2Item.java @@ -33,7 +33,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.List; /** - * + * XML. * @author JPEXS */ public class XMLAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/XMLFilterAVM2Item.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/XMLFilterAVM2Item.java index d388092a1..2f1b42be0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/XMLFilterAVM2Item.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/XMLFilterAVM2Item.java @@ -29,7 +29,7 @@ import com.jpexs.decompiler.graph.model.LocalData; import java.util.List; /** - * + * XML filter. * @author JPEXS */ public class XMLFilterAVM2Item extends AVM2Item { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/todo.txt b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/todo.txt deleted file mode 100644 index c1ac0c709..000000000 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/avm2/parser/script/todo.txt +++ /dev/null @@ -1,3 +0,0 @@ -TODO List for AS3 parser/compiler: ------------------------------- -- ??? diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/methodinfoparser/MethodInfoParseException.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/methodinfoparser/MethodInfoParseException.java index 290f634cc..8fb8876d0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/methodinfoparser/MethodInfoParseException.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/methodinfoparser/MethodInfoParseException.java @@ -19,7 +19,7 @@ package com.jpexs.decompiler.flash.abc.methodinfoparser; import com.jpexs.decompiler.flash.ParseException; /** - * + * Method info parse exception. * @author JPEXS */ public class MethodInfoParseException extends ParseException { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/methodinfoparser/MethodInfoParser.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/methodinfoparser/MethodInfoParser.java index 30d79bf93..d238d9dd5 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/methodinfoparser/MethodInfoParser.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/methodinfoparser/MethodInfoParser.java @@ -27,7 +27,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * ABC Method info P-code parser. * @author JPEXS */ public class MethodInfoParser { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/methodinfoparser/ParsedSymbol.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/methodinfoparser/ParsedSymbol.java index 2dadafdfd..f515ba473 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/methodinfoparser/ParsedSymbol.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/methodinfoparser/ParsedSymbol.java @@ -17,7 +17,7 @@ package com.jpexs.decompiler.flash.abc.methodinfoparser; /** - * + * ABC method info P-code parser symbol. * @author JPEXS */ public class ParsedSymbol { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ABCException.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ABCException.java index 322d7c7e4..39b0260d7 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ABCException.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ABCException.java @@ -21,11 +21,12 @@ import com.jpexs.decompiler.flash.abc.avm2.AVM2ConstantPool; import com.jpexs.decompiler.flash.abc.avm2.ConvertException; import com.jpexs.decompiler.graph.DottedChain; import com.jpexs.helpers.Helper; + import java.io.Serializable; import java.util.List; /** - * + * Exception. * @author JPEXS */ public class ABCException implements Serializable, Cloneable { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/AssignedValue.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/AssignedValue.java index 06cdefeab..5860b8de9 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/AssignedValue.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/AssignedValue.java @@ -19,17 +19,32 @@ package com.jpexs.decompiler.flash.abc.types; import com.jpexs.decompiler.graph.GraphTargetItem; /** - * + * Assigned value - for slots, const. * @author JPEXS */ public class AssignedValue { + /** + * Value + */ public GraphTargetItem value; + /** + * Initializer type + */ public int initializer; + /** + * Method index + */ public int method; + /** + * Constructs a new assigned value. + * @param value Value + * @param initializer Initializer type + * @param method Method index + */ public AssignedValue(GraphTargetItem value, int initializer, int method) { this.value = value; this.initializer = initializer; diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ClassInfo.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ClassInfo.java index 78db95d8b..686e77ed7 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ClassInfo.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ClassInfo.java @@ -22,41 +22,75 @@ import com.jpexs.decompiler.flash.abc.types.traits.TraitMethodGetterSetter; import com.jpexs.decompiler.flash.abc.types.traits.Traits; import com.jpexs.decompiler.flash.types.annotations.Internal; import com.jpexs.decompiler.graph.DottedChain; + import java.util.List; /** - * + * Class info. * @author JPEXS */ public class ClassInfo { - public int cinit_index; //MethodInfo - static initializer + /** + * Static class initializer method info index. + */ + public int cinit_index; + /** + * Static traits. + */ public Traits static_traits; + /** + * True if class is deleted. + */ @Internal public boolean deleted; + /** + * Last disp_id. + */ @Internal public int lastDispId = -1; + /** + * Constructs a new ClassInfo. + */ public ClassInfo() { static_traits = new Traits(); } + /** + * Constructs a new ClassInfo. + * @param traits Static traits + */ public ClassInfo(Traits traits) { static_traits = traits; } + /** + * To string. + * @return String + */ @Override public String toString() { return "method_index=" + cinit_index + "\r\n" + static_traits.toString(); } + /** + * To string. + * @param abc ABC + * @param fullyQualifiedNames Fully qualified names + * @return String + */ public String toString(ABC abc, List fullyQualifiedNames) { return "method_index=" + cinit_index + "\r\n" + static_traits.toString(abc, fullyQualifiedNames); } + /** + * Gets next disp_id. + * @return Next disp_id + */ public int getNextDispId() { if (lastDispId == -1) { lastDispId = 0; diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ConvertData.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ConvertData.java index 6a1184c7b..110c52735 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ConvertData.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ConvertData.java @@ -18,11 +18,12 @@ package com.jpexs.decompiler.flash.abc.types; import com.jpexs.decompiler.flash.abc.types.traits.TraitSlotConst; import com.jpexs.decompiler.flash.configuration.Configuration; + import java.util.HashMap; import java.util.Map; /** - * + * Data for conversion. * @author JPEXS */ public class ConvertData { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Decimal.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Decimal.java index 61fdf047a..c681eba82 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Decimal.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Decimal.java @@ -17,7 +17,7 @@ package com.jpexs.decompiler.flash.abc.types; /** - * + * Decimal value. * @author JPEXS */ public class Decimal { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Float4.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Float4.java index 62e62c012..7ab0c9ee4 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Float4.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Float4.java @@ -16,6 +16,10 @@ */ package com.jpexs.decompiler.flash.abc.types; +/** + * Float4 value. + * @author JPEXS + */ public class Float4 { public float[] values = new float[4]; diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/InstanceInfo.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/InstanceInfo.java index 00914c4df..5e9618aad 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/InstanceInfo.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/InstanceInfo.java @@ -38,51 +38,111 @@ import com.jpexs.helpers.Helper; import java.util.List; /** - * + * Instance info. * @author JPEXS */ public class InstanceInfo { + /** + * Name index - multiname. + */ public int name_index; + /** + * Super index - multiname. + */ public int super_index; - public int flags; // 1 = sealed, 0 = dynamic, 2 = final, 4 = interface, 8 = ProtectedNs, 16 = non nullable + /** + * Flags. + * 1 = sealed, 0 = dynamic, 2 = final, 4 = interface, 8 = ProtectedNs, 16 = non nullable + */ + public int flags; - public int protectedNS; //if flags & 8 + /** + * Protected namespace. + * if flags & 8 + */ + public int protectedNS; + /** + * Interfaces. + */ public int[] interfaces; - public int iinit_index; // MethodInfo - constructor + /** + * Instance initializer (constructor) - method index. + */ + public int iinit_index; + /** + * Instance traits. + */ public Traits instance_traits; - public static final int CLASS_SEALED = 1; //not dynamic + /** + * Not dynamic + */ + public static final int CLASS_SEALED = 1; // + /** + * Final class + */ public static final int CLASS_FINAL = 2; + /** + * Interface + */ public static final int CLASS_INTERFACE = 4; + /** + * Has protected namespace + */ public static final int CLASS_PROTECTEDNS = 8; - public static final int CLASS_NON_NULLABLE = 16; //This is somehow used in Flex, propably through annotations or something with Vector datatype (?) + /** + * Unknown. + * This is somehow used in Flex, probably through annotations or something with Vector datatype (?) + * TODO: Investigate this + */ + public static final int CLASS_NON_NULLABLE = 16; + /** + * True if class is deleted. + */ @Internal public boolean deleted; + /** + * Constructs a new InstanceInfo. + */ public InstanceInfo() { instance_traits = new Traits(); } + /** + * Constructs a new InstanceInfo. + * @param traits Instance traits + */ public InstanceInfo(Traits traits) { instance_traits = traits; } + /** + * To string. + * @return String + */ @Override public String toString() { return "name_index=" + name_index + " super_index=" + super_index + " flags=" + flags + " protectedNS=" + protectedNS + " interfaces=" + Helper.intArrToString(interfaces) + " method_index=" + iinit_index + "\r\n" + instance_traits.toString(); } + /** + * To string. + * @param abc ABC + * @param fullyQualifiedNames Fully qualified names + * @return String + */ public String toString(ABC abc, List fullyQualifiedNames) { String supIndexStr = "[nothing]"; if (super_index > 0) { @@ -91,6 +151,16 @@ public class InstanceInfo { return "name_index=" + abc.constants.getMultiname(name_index).toString(abc.constants, fullyQualifiedNames) + " super_index=" + supIndexStr + " flags=" + flags + " protectedNS=" + protectedNS + " interfaces=" + Helper.intArrToString(interfaces) + " method_index=" + iinit_index + "\r\n" + instance_traits.toString(abc, fullyQualifiedNames); } + /** + * Gets class header string. + * @param assetsDir Assets directory + * @param writer Writer + * @param abc ABC + * @param fullyQualifiedNames Fully qualified names + * @param allowPrivate Allow private + * @param allowEmbed Allow embed + * @return Writer + */ public GraphTextWriter getClassHeaderStr(String assetsDir, GraphTextWriter writer, ABC abc, List fullyQualifiedNames, boolean allowPrivate, boolean allowEmbed) { final String ASSETS_DIR = assetsDir; // "/_assets/"; @@ -246,22 +316,43 @@ public class InstanceInfo { return writer; } + /** + * Gets name. + * @param constants Constants + * @return Multiname + */ public Multiname getName(AVM2ConstantPool constants) { return constants.getMultiname(name_index); } + /** + * Checks if class is interface. + * @return True if class is interface + */ public boolean isInterface() { return ((flags & CLASS_INTERFACE) == CLASS_INTERFACE); } + /** + * Checks if class is dynamic. + * @return True if class is dynamic + */ public boolean isDynamic() { return (flags & CLASS_SEALED) == 0; } + /** + * Checks if class is final. + * @return True if class is final + */ public boolean isFinal() { return (flags & CLASS_FINAL) == CLASS_FINAL; } + /** + * Checks if class is nullable. + * @return True if class is nullable + */ public boolean isNullable() { return (flags & CLASS_NON_NULLABLE) != CLASS_NON_NULLABLE; } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/MetadataInfo.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/MetadataInfo.java index e90ee32d1..b20114a5a 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/MetadataInfo.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/MetadataInfo.java @@ -20,34 +20,61 @@ import com.jpexs.decompiler.flash.abc.avm2.AVM2ConstantPool; import com.jpexs.helpers.Helper; /** - * + * Trait metadata. * @author JPEXS */ public class MetadataInfo { + /** + * Name index - index to string in constant pool + */ public int name_index; + /** + * Keys - indexes to string in constant pool + */ public int[] keys; + /** + * Values - indexes to string in constant pool + */ public int[] values; + /** + * Constructs a new MetadataInfo with empty keys and values + */ public MetadataInfo() { this.name_index = 0; this.keys = new int[0]; this.values = new int[0]; } + /** + * Constructs a new MetadataInfo with given name index, keys and values + * @param name_index Name index + * @param keys Keys + * @param values Values + */ public MetadataInfo(int name_index, int[] keys, int[] values) { this.name_index = name_index; this.keys = keys; this.values = values; } + /** + * Returns a string representation of this MetadataInfo + * @return String representation of this MetadataInfo + */ @Override public String toString() { return "name_index=" + name_index + " keys=" + Helper.intArrToString(keys) + " values=" + Helper.intArrToString(values); } + /** + * Returns a string representation of this MetadataInfo + * @param constants Constant pool + * @return String representation of this MetadataInfo + */ public String toString(AVM2ConstantPool constants) { StringBuilder sb = new StringBuilder(); sb.append("name=").append(constants.getString(name_index)); diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/MethodBody.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/MethodBody.java index a2619c732..9ad3c054c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/MethodBody.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/MethodBody.java @@ -53,46 +53,94 @@ import java.util.logging.Level; import java.util.logging.Logger; /** - * + * Method body of a method in ABC file. * @author JPEXS */ public final class MethodBody implements Cloneable { + /** + * Logger + */ private static final Logger logger = Logger.getLogger(MethodBody.class.getName()); + /** + * Used for debugging - decompile only fixed method + */ private static final String DEBUG_FIXED = null; + /** + * Method body is deleted + */ @Internal public boolean deleted; + /** + * Debug mode + */ @Internal boolean debugMode = false; + /** + * Method info index + */ public int method_info; + /** + * Maximum stack size + */ public int max_stack; + /** + * Maximum number of registers + */ public int max_regs; + /** + * Initial scope depth + */ public int init_scope_depth; + /** + * Maximum scope depth + */ public int max_scope_depth; + /** + * Code bytes + */ @SWFField private byte[] codeBytes; + /** + * AVM2 code + */ private AVM2Code code; + /** + * Exceptions + */ public ABCException[] exceptions; + /** + * Traits + */ public Traits traits; + /** + * Converted items + */ @Internal public transient List convertedItems; + /** + * Convert exception + */ @Internal public transient Throwable convertException; + /** + * ABC file + */ @Internal private ABC abc; @@ -102,6 +150,9 @@ public final class MethodBody implements Cloneable { @Internal private transient MethodBody lastConvertedBody = null; + /** + * Constructs a new MethodBody with empty traits, code bytes and exceptions. + */ public MethodBody() { this.traits = new Traits(); this.codeBytes = SWFInputStream.BYTE_ARRAY_EMPTY; @@ -109,10 +160,21 @@ public final class MethodBody implements Cloneable { this.abc = null; } + /** + * Sets the ABC file. + * @param abc ABC file + */ public void setAbc(ABC abc) { this.abc = abc; } + /** + * Constructs a new MethodBody with given ABC file, traits, code bytes and exceptions. + * @param abc ABC file + * @param traits Traits + * @param codeBytes Code bytes + * @param exceptions Exceptions + */ public MethodBody(ABC abc, Traits traits, byte[] codeBytes, ABCException[] exceptions) { this.traits = traits; this.codeBytes = codeBytes; @@ -120,15 +182,26 @@ public final class MethodBody implements Cloneable { this.abc = abc; } + /** + * Sets the code bytes. + * @param codeBytes Code bytes + */ public synchronized void setCodeBytes(byte[] codeBytes) { this.codeBytes = codeBytes; this.code = null; } + /** + * Sets the modified flag. + */ public void setModified() { this.codeBytes = null; } + /** + * Gets the code bytes. + * @return Code bytes + */ public synchronized byte[] getCodeBytes() { if (codeBytes != null) { return codeBytes; @@ -137,6 +210,10 @@ public final class MethodBody implements Cloneable { } } + /** + * Gets the AVM2 code. + * @return AVM2 code + */ public synchronized AVM2Code getCode() { if (code == null) { AVM2Code avm2Code; @@ -156,24 +233,60 @@ public final class MethodBody implements Cloneable { return code; } + /** + * Sets the AVM2 code. + * @param code AVM2 code + */ public void setCode(AVM2Code code) { this.code = code; this.codeBytes = null; } + /** + * Marks offsets. + */ public void markOffsets() { getCode().markOffsets(); } + /** + * Removes dead code. + * @param constants Constant pool + * @param trait Trait + * @param info Method info + * @return Number of removed instructions + * @throws InterruptedException + */ public int removeDeadCode(AVM2ConstantPool constants, Trait trait, MethodInfo info) throws InterruptedException { return getCode().removeDeadCode(this); } + /** + * Removes traps - deobfuscation. + * @param abc ABC file + * @param trait Trait + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param path Path + * @return Number of removed instructions + * @throws InterruptedException + */ public int removeTraps(ABC abc, Trait trait, int scriptIndex, int classIndex, boolean isStatic, String path) throws InterruptedException { return getCode().removeTraps(trait, method_info, this, abc, scriptIndex, classIndex, isStatic, path); } + /** + * Deobfuscates the method body. + * @param level Deobfuscation level + * @param trait Trait + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param path Path + * @throws InterruptedException + */ public void deobfuscate(DeobfuscationLevel level, Trait trait, int scriptIndex, int classIndex, boolean isStatic, String path) throws InterruptedException { if (level == DeobfuscationLevel.LEVEL_REMOVE_DEAD_CODE) { removeDeadCode(abc.constants, trait, abc.method_info.get(method_info)); @@ -184,6 +297,10 @@ public final class MethodBody implements Cloneable { ((Tag) abc.parentTag).setModified(true); } + /** + * Removes instruction. + * @param pos Position + */ public void removeInstruction(int pos) { getCode().removeInstruction(pos, this); } @@ -200,6 +317,11 @@ public final class MethodBody implements Cloneable { getCode().replaceInstruction(pos, instruction, this); } + /** + * Inserts all instructions at specified point. Handles offsets properly. + * @param pos Position in the list + * @param list List of instructions + */ public void insertAll(int pos, List list) { for (AVM2Instruction ins : list) { insertInstruction(pos++, ins); @@ -232,6 +354,10 @@ public final class MethodBody implements Cloneable { getCode().insertInstruction(pos, instruction, mapOffsetsAfterIns, this); } + /** + * Get number of local registers reserved for this method. + * @return Number of local registers reserved for this method + */ public int getLocalReservedCount() { MethodInfo methodInfo = abc.method_info.get(this.method_info); int pos = methodInfo.param_types.length + 1; @@ -244,6 +370,11 @@ public final class MethodBody implements Cloneable { return pos; } + /** + * Get local register names. + * @param abc ABC file + * @return Local register names + */ public HashMap getLocalRegNames(ABC abc) { HashMap ret = new HashMap<>(); for (int i = 1; i <= abc.method_info.get(this.method_info).param_types.length; i++) { @@ -272,6 +403,28 @@ public final class MethodBody implements Cloneable { return ret; } + /** + * Converts the method body. + * @param callStack Call stack + * @param abcIndex ABC indexing + * @param convertData Convert data + * @param path Path + * @param exportMode Export mode + * @param isStatic Is static + * @param methodIndex Method index + * @param scriptIndex Script index + * @param classIndex Class index + * @param abc ABC file + * @param trait Trait + * @param scopeStack Scope stack + * @param initializerType Initializer type + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param initTraits Initial traits + * @param firstLevel First level + * @param seenMethods Seen methods + * @throws InterruptedException + */ public void convert(List callStack, AbcIndexing abcIndex, final ConvertData convertData, final String path, ScriptExportMode exportMode, final boolean isStatic, final int methodIndex, final int scriptIndex, final int classIndex, final ABC abc, final Trait trait, final ScopeStack scopeStack, final int initializerType, final NulWriter writer, final List fullyQualifiedNames, Traits initTraits, boolean firstLevel, Set seenMethods) throws InterruptedException { seenMethods.add(this.method_info); if (debugMode) { @@ -330,6 +483,10 @@ public final class MethodBody implements Cloneable { } } + /** + * Returns a string representation of this MethodBody. + * @return String representation of this MethodBody + */ @Override public String toString() { String s = ""; @@ -338,6 +495,20 @@ public final class MethodBody implements Cloneable { return s; } + /** + * Returns a string representation of this MethodBody. + * @param callStack Call stack + * @param abcIndex ABC indexing + * @param path Path + * @param exportMode Export mode + * @param abc ABC file + * @param trait Trait + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param seenMethods Seen methods + * @return Writer + * @throws InterruptedException + */ public GraphTextWriter toString(List callStack, AbcIndexing abcIndex, final String path, ScriptExportMode exportMode, final ABC abc, final Trait trait, final GraphTextWriter writer, final List fullyQualifiedNames, Set seenMethods) throws InterruptedException { seenMethods.add(method_info); @@ -383,6 +554,18 @@ public final class MethodBody implements Cloneable { return writer; } + /** + * Converts the method body. Can use previously converted method body. + * @param deobfuscate Deobfuscate + * @param path Path + * @param isStatic Is static + * @param scriptIndex Script index + * @param classIndex Class index + * @param abc ABC file + * @param trait Trait + * @return Method body + * @throws InterruptedException + */ public MethodBody convertMethodBodyCanUseLast(boolean deobfuscate, String path, boolean isStatic, int scriptIndex, int classIndex, ABC abc, Trait trait) throws InterruptedException { if (lastConvertedBody != null) { return lastConvertedBody; @@ -390,10 +573,25 @@ public final class MethodBody implements Cloneable { return convertMethodBody(deobfuscate, path, isStatic, scriptIndex, classIndex, abc, trait); } + /** + * Clears the last converted method body. + */ public void clearLastConverted() { this.lastConvertedBody = null; } + /** + * Converts the method body. + * @param deobfuscate Deobfuscate + * @param path Path + * @param isStatic Is static + * @param scriptIndex Script index + * @param classIndex Class index + * @param abc ABC file + * @param trait Trait + * @return Method body + * @throws InterruptedException + */ public MethodBody convertMethodBody(boolean deobfuscate, String path, boolean isStatic, int scriptIndex, int classIndex, ABC abc, Trait trait) throws InterruptedException { MethodBody body = clone(); AVM2Code code = body.getCode(); @@ -419,6 +617,14 @@ public final class MethodBody implements Cloneable { return body; } + /** + * Converts the method body to high-level source code. + * @param callStack Call stack + * @param abcIndex ABC indexing + * @param scriptIndex Script index + * @param seenMethods Seen methods + * @return High-level source code + */ public String toSource(List callStack, AbcIndexing abcIndex, int scriptIndex, Set seenMethods) { ConvertData convertData = new ConvertData(); convertData.deobfuscationMode = 0; @@ -437,11 +643,20 @@ public final class MethodBody implements Cloneable { return null; } + /** + * Clones this MethodBody. + * @return Cloned MethodBody + */ @Override public MethodBody clone() { return clone(false); } + /** + * Clones this MethodBody. + * @param deepTraits Deep traits + * @return Cloned MethodBody + */ public MethodBody clone(boolean deepTraits) { try { MethodBody ret = (MethodBody) super.clone(); @@ -468,6 +683,13 @@ public final class MethodBody implements Cloneable { } } + /** + * Auto fills the statistics (max stack, max scope depth, ...). + * @param abc ABC file + * @param initScope Initial scope + * @param hasThis Has this + * @return True if successful + */ public boolean autoFillStats(ABC abc, int initScope, boolean hasThis) { //System.out.println("--------------"); CodeStats stats = getCode().getStats(abc, this, initScope, true); @@ -491,6 +713,11 @@ public final class MethodBody implements Cloneable { return true; } + /** + * Auto fills the maximum number of registers. + * @param abc ABC file + * @return True if successful + */ public boolean autoFillMaxRegs(ABC abc) { CodeStats stats = getCode().getMaxLocal(); if (stats == null) { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/MethodInfo.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/MethodInfo.java index ec5b2377c..79e010492 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/MethodInfo.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/MethodInfo.java @@ -31,14 +31,22 @@ import java.util.List; import java.util.Map; /** - * + * Method info in ABC file. * @author JPEXS */ public class MethodInfo { + /** + * If this method is deleted + */ @Internal public boolean deleted; + /** + * Deletes this method + * @param abc ABC file + * @param d True if method should be deleted, false if it should be undeleted + */ public void delete(ABC abc, boolean d) { this.deleted = d; diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Multiname.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Multiname.java index 65d9f293e..461d92176 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Multiname.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Multiname.java @@ -33,58 +33,128 @@ import java.util.logging.Level; import java.util.logging.Logger; /** - * + * Multiname in ABC file. * @author JPEXS */ public class Multiname { + /** + * Qualified name kind + */ public static final int QNAME = 7; + /** + * Qualified name of attribute kind + */ public static final int QNAMEA = 0x0d; + /** + * Runtime qualified name kind + */ public static final int RTQNAME = 0x0f; + /** + * Runtime qualified name of attribute kind + */ public static final int RTQNAMEA = 0x10; + /** + * Runtime qualified name with late resolution kind + */ public static final int RTQNAMEL = 0x11; + /** + * Runtime qualified name of attribute with late resolution kind + */ public static final int RTQNAMELA = 0x12; + /** + * Multiname kind + */ public static final int MULTINAME = 0x09; + /** + * Multiname of attribute kind + */ public static final int MULTINAMEA = 0x0e; + /** + * Multiname with late resolution kind + */ public static final int MULTINAMEL = 0x1b; + /** + * Multiname of attribute with late resolution kind + */ public static final int MULTINAMELA = 0x1c; + /** + * Type name kind + */ public static final int TYPENAME = 0x1d; + /** + * Multiname kinds + */ private static final int[] multinameKinds = new int[]{QNAME, QNAMEA, MULTINAME, MULTINAMEA, RTQNAME, RTQNAMEA, MULTINAMEL, RTQNAMEL, RTQNAMELA, MULTINAMELA, TYPENAME}; + /** + * Multiname kind names + */ private static final String[] multinameKindNames = new String[]{"QName", "QNameA", "Multiname", "MultinameA", "RTQName", "RTQNameA", "MultinameL", "RTQNameL", "RTQNameLA", "MultinameLA", "TypeName"}; + /** + * Kind + */ public int kind; + /** + * Name index - index to string constant pool + */ public int name_index; + /** + * Namespace index - index to namespace constant pool + */ public int namespace_index; - public /*final JAVA 9*/ int namespace_set_index; + /** + * Namespace set index - index to namespace set constant pool + */ + public int namespace_set_index; - public /*final JAVA 9*/ int qname_index; //for TypeName + /** + * Qname index - index to multiname constant pool + */ + public int qname_index; //for TypeName - public /*final JAVA 9*/ int[] params; //for TypeName + /** + * Parameters - indexes to multiname constant pool + */ + public int[] params; //for TypeName + /** + * Deleted flag + */ @Internal public boolean deleted; + /** + * Display namespace flag + */ @Internal private boolean displayNamespace = false; + /** + * Whether this typename is cyclic + */ @Internal private boolean cyclic = false; + /** + * Gets namespace suffix. + * @return Namespace suffix + */ public String getNamespaceSuffix() { if (displayNamespace) { return "#" + namespace_index; @@ -92,10 +162,18 @@ public class Multiname { return ""; } + /** + * Sets display namespace flag. + * @param displayNamespace Display namespace flag + */ public void setDisplayNamespace(boolean displayNamespace) { this.displayNamespace = displayNamespace; } + /** + * Checks if the multiname kind is valid. + * @return True if the multiname kind is valid + */ private boolean validType() { boolean cnt = false; for (int i = 0; i < multinameKinds.length; i++) { @@ -106,6 +184,9 @@ public class Multiname { return cnt; } + /** + * Constructs a new multiname. + */ public Multiname() { kind = -1; namespace_index = 0; @@ -114,6 +195,15 @@ public class Multiname { params = null; } + /** + * Constructs a new multiname. + * @param kind Kind + * @param name_index Name index + * @param namespace_index Namespace index + * @param namespace_set_index Namespace set index + * @param qname_index Qname index + * @param params Parameters + */ private Multiname(int kind, int name_index, int namespace_index, int namespace_set_index, int qname_index, int[] params) { this.kind = kind; this.name_index = name_index; @@ -126,42 +216,96 @@ public class Multiname { } } + /** + * Checks if the multiname has its own name. + * @return True if the multiname has its own name + */ public boolean hasOwnName() { return kind == QNAME || kind == QNAMEA || kind == RTQNAME || kind == RTQNAMEA || kind == MULTINAME || kind == MULTINAMEA; } + /** + * Checks if the multiname has its own namespace. + * @return True if the multiname has its own namespace + */ public boolean hasOwnNamespace() { return kind == QNAME || kind == QNAMEA; } + /** + * Checks if the multiname has its own namespace set. + * @return True if the multiname has its own namespace set + */ public boolean hasOwnNamespaceSet() { return kind == MULTINAME || kind == MULTINAMEA || kind == MULTINAMEL || kind == MULTINAMELA; } + /** + * Creates a new QName. + * @param attribute Attribute flag + * @param name_index Name index + * @param namespace_index Namespace index + * @return New QName + */ public static Multiname createQName(boolean attribute, int name_index, int namespace_index) { return new Multiname(attribute ? QNAMEA : QNAME, name_index, namespace_index, 0, 0, null); } + /** + * Creates a new RTQName. + * @param attribute Attribute flag + * @param name_index Name index + * @return New RTQName + */ public static Multiname createRTQName(boolean attribute, int name_index) { return new Multiname(attribute ? RTQNAMEA : RTQNAME, name_index, 0, 0, 0, null); } + /** + * Creates a new RTQNameL. + * @param attribute Attribute flag + * @return New RTQNameL + */ public static Multiname createRTQNameL(boolean attribute) { return new Multiname(attribute ? RTQNAMELA : RTQNAMEL, 0, 0, 0, 0, null); } + /** + * Creates a new Multiname. + * @param attribute Attribute flag + * @param name_index Name index + * @param namespace_set_index Namespace set index + * @return New Multiname + */ public static Multiname createMultiname(boolean attribute, int name_index, int namespace_set_index) { return new Multiname(attribute ? MULTINAMEA : MULTINAME, name_index, 0, namespace_set_index, 0, null); } + /** + * Creates a new MultinameL. + * @param attribute Attribute flag + * @param namespace_set_index Namespace set index + * @return New MultinameL + */ public static Multiname createMultinameL(boolean attribute, int namespace_set_index) { return new Multiname(attribute ? MULTINAMELA : MULTINAMEL, 0, 0, namespace_set_index, 0, null); } + /** + * Creates a new TypeName. + * @param qname_index Qname index + * @param params Parameters + * @return New TypeName + */ public static Multiname createTypeName(int qname_index, int[] params) { return new Multiname(TYPENAME, 0, 0, 0, qname_index, params); } + /** + * Checks if the typename is cyclic. + * @param constants Constant pool + * @param name_index Type name index + */ public static void checkTypeNameCyclic(AVM2ConstantPool constants, int name_index) { Set visited = new HashSet<>(); if (name_index >= constants.getMultinameCount()) { @@ -178,6 +322,13 @@ public class Multiname { } } + /** + * Checks if the typename is cyclic. + * @param constants Constant pool + * @param name_index Type name index + * @param visited Visited set + * @return True if the typename is cyclic + */ private static boolean checkCyclicTypeNameSub(AVM2ConstantPool constants, int name_index, Set visited) { if (name_index >= constants.getMultinameCount()) { return false; @@ -200,6 +351,10 @@ public class Multiname { return false; } + /** + * Checks if the multiname is attribute. + * @return True if the multiname is attribute + */ public boolean isAttribute() { if (kind == QNAMEA) { return true; @@ -219,6 +374,10 @@ public class Multiname { return false; } + /** + * Checks if the multiname is runtime + * @return True if the multiname is runtime + */ public boolean isRuntime() { if (kind == RTQNAME) { return true; @@ -235,6 +394,10 @@ public class Multiname { return false; } + /** + * Checks if the multiname requires name on stack. + * @return True if the multiname requires name on stack + */ public boolean needsName() { if (kind == RTQNAMEL) { return true; @@ -251,6 +414,10 @@ public class Multiname { return false; } + /** + * Checks if the multiname requires namespace on stack. + * @return True if the multiname requires namespace on stack + */ public boolean needsNs() { if (kind == RTQNAME) { return true; @@ -267,6 +434,10 @@ public class Multiname { return false; } + /** + * Gets the kind string + * @return Kind string + */ public String getKindStr() { String kindStr = "?"; for (int k = 0; k < multinameKinds.length; k++) { @@ -278,6 +449,12 @@ public class Multiname { return kindStr; } + /** + * Converts the multiname to string. + * @param constants Constant pool + * @param index Index + * @return Multiname as string + */ public static String namespaceToString(AVM2ConstantPool constants, int index) { if (index == 0) { return "null"; @@ -312,6 +489,12 @@ public class Multiname { + "\"") + (sub > 0 ? ",\"" + sub + "\"" : "") + ")"; } + /** + * Converts the namespace set to string. + * @param constants Constant pool + * @param index Index + * @return Namespace set as string + */ public static String namespaceSetToString(AVM2ConstantPool constants, int index) { if (index == 0) { return "null"; @@ -332,6 +515,13 @@ public class Multiname { return ret.toString(); } + /** + * Converts the multiname to string. + * @param constants Constant pool + * @param index Index + * @param fullyQualifiedNames Fully qualified names + * @return Multiname as string + */ private static String multinameToString(AVM2ConstantPool constants, int index, List fullyQualifiedNames) { if (index == 0) { return "null"; @@ -339,6 +529,10 @@ public class Multiname { return constants.getMultiname(index).toString(constants, fullyQualifiedNames); } + /** + * Converts the multiname to string. + * @return Multiname as string + */ @Override public String toString() { String kindStr = getKindStr(); @@ -354,6 +548,12 @@ public class Multiname { } + /** + * Converts the multiname to string. + * @param constants Constant pool + * @param fullyQualifiedNames Fully qualified names + * @return Multiname as string + */ public String toString(AVM2ConstantPool constants, List fullyQualifiedNames) { switch (kind) { @@ -394,6 +594,14 @@ public class Multiname { return null; } + /** + * Converts the typename to string. + * @param constants Constant pool + * @param fullyQualifiedNames Fully qualified names + * @param dontDeobfuscate Don't deobfuscate flag + * @param withSuffix With suffix flag + * @return Typename as string + */ private String typeNameToStr(AVM2ConstantPool constants, List fullyQualifiedNames, boolean dontDeobfuscate, boolean withSuffix) { if (cyclic) { return "§§cyclic_typename()"; @@ -418,6 +626,14 @@ public class Multiname { return typeNameStr.toString(); } + /** + * Gets the name with custom namespace. + * @param abc ABC + * @param fullyQualifiedNames Fully qualified names + * @param dontDeobfuscate Don't deobfuscate flag + * @param withSuffix With suffix flag + * @return Name with custom namespace + */ public String getNameWithCustomNamespace(ABC abc, List fullyQualifiedNames, boolean dontDeobfuscate, boolean withSuffix) { if (kind == TYPENAME) { return typeNameToStr(abc.constants, fullyQualifiedNames, dontDeobfuscate, withSuffix); @@ -453,6 +669,14 @@ public class Multiname { } } + /** + * Gets the name. + * @param constants Constant pool + * @param fullyQualifiedNames Fully qualified names + * @param dontDeobfuscate Don't deobfuscate flag + * @param withSuffix With suffix flag + * @return Name + */ public String getName(AVM2ConstantPool constants, List fullyQualifiedNames, boolean dontDeobfuscate, boolean withSuffix) { if (kind == TYPENAME) { return typeNameToStr(constants, fullyQualifiedNames, dontDeobfuscate, withSuffix); @@ -472,6 +696,12 @@ public class Multiname { } } + /** + * Gets the name with namespace. + * @param constants Constant pool + * @param withSuffix With suffix flag + * @return Name with namespace + */ public DottedChain getNameWithNamespace(AVM2ConstantPool constants, boolean withSuffix) { DottedChain cached = constants.getCachedMultinameWithNamespace(this); if (cached != null) { @@ -504,6 +734,11 @@ public class Multiname { return ret; } + /** + * Gets the namespace. + * @param constants Constant pool + * @return Namespace + */ public Namespace getNamespace(AVM2ConstantPool constants) { if ((namespace_index == 0) || (namespace_index == -1)) { return null; @@ -515,8 +750,8 @@ public class Multiname { /** * Gets simple namespace name as dottedchain. Ignores swf api versioning. * - * @param constants - * @return + * @param constants Constant pool + * @return Simple namespace name as dottedchain */ public DottedChain getSimpleNamespaceName(AVM2ConstantPool constants) { if (hasOwnNamespace()) { @@ -536,10 +771,10 @@ public class Multiname { } /** - * Gets simplpe namespace kind. Ignores swf api versioning. + * Gets simple namespace kind. Ignores swf api versioning. * - * @param constants - * @return + * @param constants Constant pool + * @return Simple namespace kind */ public int getSimpleNamespaceKind(AVM2ConstantPool constants) { if (hasOwnNamespace()) { @@ -558,6 +793,11 @@ public class Multiname { return 0; } + /** + * Gets the versions of this multiname for API versioned ABCs. + * @param constants Constant pool + * @return Versions of this multiname. + */ public List getApiVersions(AVM2ConstantPool constants) { if (hasOwnNamespace()) { return new ArrayList<>(); @@ -568,6 +808,11 @@ public class Multiname { return new ArrayList<>(); } + /** + * Checks if this multiname is API versioned. + * @param constants Constant pool + * @return True if this multiname is API versioned + */ public boolean isApiVersioned(AVM2ConstantPool constants) { if (hasOwnNamespace()) { return false; @@ -578,6 +823,11 @@ public class Multiname { return false; } + /** + * Gets the namespace set. + * @param constants Constant pool + * @return Namespace set + */ public NamespaceSet getNamespaceSet(AVM2ConstantPool constants) { if (namespace_set_index == 0) { return null; @@ -588,6 +838,10 @@ public class Multiname { } } + /** + * Hash code. + * @return Hash code + */ @Override public int hashCode() { int hash = 7; @@ -600,6 +854,11 @@ public class Multiname { return hash; } + /** + * Equals. + * @param obj Object + * @return True if the objects are equal + */ @Override public boolean equals(Object obj) { if (obj == null) { @@ -632,10 +891,10 @@ public class Multiname { /** * Is this MULTINAME kind with only one namespace. Hint: it is sometimes - * used for interfaces + * used for interfaces. * - * @param pool - * @return + * @param pool Constant pool + * @return True if this MULTINAME kind with only one namespace */ public boolean isMULTINAMEwithOneNs(AVM2ConstantPool pool) { return kind == MULTINAME && pool.getNamespaceSet(namespace_set_index).namespaces.length == 1; @@ -646,8 +905,8 @@ public class Multiname { * namespace index in namespace set of MULTINAME, if it has only one * namespace in the set. * - * @param pool - * @return + * @param pool Constant pool + * @return Single namespace index */ public int getSingleNamespaceIndex(AVM2ConstantPool pool) { if (isMULTINAMEwithOneNs(pool)) { @@ -660,8 +919,8 @@ public class Multiname { * Gets single namespace. It can be the namespace of QNAME or namespace in * namespace set of MULTINAME, if it has only one namespace in the set. * - * @param pool - * @return + * @param pool Constant pool + * @return Single namespace */ public Namespace getSingleNamespace(AVM2ConstantPool pool) { int index = getSingleNamespaceIndex(pool); @@ -671,10 +930,23 @@ public class Multiname { return pool.getNamespace(index); } + /** + * Checks if this multiname is effectively a QName. + * Efectively means that it is a QName or QNameA or MULTINAME with only one namespace. + * @param thisCpool + * @return + */ private boolean isEfectivelyQname(AVM2ConstantPool thisCpool) { return kind == QNAME || kind == QNAMEA || isMULTINAMEwithOneNs(thisCpool); } + /** + * Checks if this qname effectively equals to other qname. + * @param thisCpool This constant pool + * @param other Other qname + * @param otherCpool Other constant pool + * @return True if this qname effectively equals to other qname + */ public boolean qnameEquals(AVM2ConstantPool thisCpool, Multiname other, AVM2ConstantPool otherCpool) { if (!isEfectivelyQname(thisCpool) || !other.isEfectivelyQname(otherCpool)) { return false; @@ -704,6 +976,10 @@ public class Multiname { return true; } + /** + * Gets the cyclic flag. + * @return Cyclic flag + */ public boolean isCyclic() { return cyclic; } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Namespace.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Namespace.java index 769f91d13..3dce423db 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Namespace.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/Namespace.java @@ -21,42 +21,92 @@ import com.jpexs.decompiler.flash.types.annotations.Internal; import com.jpexs.decompiler.graph.DottedChain; /** - * + * Namespace in ABC file. * @author JPEXS */ public class Namespace { + /** + * Minimum API mark value + */ public static final int MIN_API_MARK = 0xE000; + /** + * Maximum API mark value + */ public static final int MAX_API_MARK = 0xF8FF; + /** + * Namespace kind: Namespace + */ public static final int KIND_NAMESPACE = 8; + /** + * Namespace kind: Private namespace + */ public static final int KIND_PRIVATE = 5; + /** + * Namespace kind: Package namespace + */ public static final int KIND_PACKAGE = 22; + /** + * Namespace kind: Package internal namespace + */ public static final int KIND_PACKAGE_INTERNAL = 23; + /** + * Namespace kind: Protected namespace + */ public static final int KIND_PROTECTED = 24; + /** + * Namespace kind: Explicit namespace + */ public static final int KIND_EXPLICIT = 25; + /** + * Namespace kind: Static protected namespace + */ public static final int KIND_STATIC_PROTECTED = 26; + /** + * Namespace kinds + */ public static final int[] nameSpaceKinds = new int[]{KIND_NAMESPACE, KIND_PRIVATE, KIND_PACKAGE, KIND_PACKAGE_INTERNAL, KIND_PROTECTED, KIND_EXPLICIT, KIND_STATIC_PROTECTED}; + /** + * Namespace kind names + */ public static final String[] nameSpaceKindNames = new String[]{"Namespace", "PrivateNamespace", "PackageNamespace", "PackageInternalNs", "ProtectedNamespace", "ExplicitNamespace", "StaticProtectedNs"}; + /** + * Namespace prefixes + */ public static final String[] namePrefixes = new String[]{"", "private", "public", "internal", "protected", "explicit", "protected"}; + /** + * Kind + */ public int kind; + /** + * Name index - index to string in constant pool + */ public int name_index; + /** + * Deleted flag + */ @Internal public boolean deleted; + /** + * Converts kind to string. + * @param kind Kind + * @return Kind as string + */ public static String kindToStr(int kind) { for (int i = 0; i < nameSpaceKinds.length; i++) { if (nameSpaceKinds[i] == kind) { @@ -66,6 +116,11 @@ public class Namespace { return null; } + /** + * Converts kind to prefix. + * @param kind Kind + * @return Prefix + */ public static String kindToPrefix(int kind) { for (int i = 0; i < nameSpaceKinds.length; i++) { if (nameSpaceKinds[i] == kind) { @@ -75,14 +130,26 @@ public class Namespace { return null; } + /** + * Constructs a new instance of Namespace. + */ public Namespace() { } + /** + * Constructs a new instance of Namespace. + * @param kind Kind + * @param name_index Name index + */ public Namespace(int kind, int name_index) { this.kind = kind; this.name_index = name_index; } + /** + * Gets kind as string. + * @return Kind as string + */ public String getKindStr() { String kindStr = "?"; for (int k = 0; k < nameSpaceKinds.length; k++) { @@ -94,22 +161,40 @@ public class Namespace { return kindStr; } + /** + * To string. + * @return String representation + */ @Override public String toString() { return "Namespace: kind=" + getKindStr() + " name_index=" + name_index; } + /** + * To string. + * @param constants Constant pool + * @return String representation + */ public String toString(AVM2ConstantPool constants) { return getName(constants).toPrintableString(true); } + /** + * Gets name with kind. + * @param constants Constant pool + * @return Name with kind + */ public String getNameWithKind(AVM2ConstantPool constants) { String kindStr = getKindStr(); String nameStr = constants.getString(name_index); return kindStr + (nameStr == null || nameStr.isEmpty() ? "" : " " + nameStr); } + /** + * Gets prefix. + * @return Prefix + */ public String getPrefix() { String kindStr = "?"; for (int k = 0; k < nameSpaceKinds.length; k++) { @@ -121,6 +206,11 @@ public class Namespace { return kindStr; } + /** + * Gets prefix of a kind + * @param kind Kind + * @return Prefix + */ public static String getPrefix(int kind) { String kindStr = "?"; for (int k = 0; k < nameSpaceKinds.length; k++) { @@ -132,6 +222,11 @@ public class Namespace { return kindStr; } + /** + * Gets name. + * @param constants Constant pool + * @return Name + */ public DottedChain getName(AVM2ConstantPool constants) { if (name_index == 0 || name_index == -1) { return DottedChain.EMPTY; @@ -140,6 +235,11 @@ public class Namespace { return constants.getDottedChain(name_index); } + /** + * Gets raw name. + * @param constants Constant pool + * @return Raw name + */ public String getRawName(AVM2ConstantPool constants) { if (name_index == 0 || name_index == -1) { return ""; //?? @@ -148,6 +248,12 @@ public class Namespace { return constants.getString(name_index); } + /** + * Checks if namespace has specific name. + * @param name Name to check + * @param constants Constant pool + * @return True if namespace has the name + */ public boolean hasName(String name, AVM2ConstantPool constants) { if (name == null && name_index == 0) { return true; diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/NamespaceSet.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/NamespaceSet.java index e93bca3c6..af8c464e6 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/NamespaceSet.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/NamespaceSet.java @@ -25,7 +25,7 @@ import java.util.List; import java.util.Set; /** - * + * Namespace set in ABC file. * @author JPEXS */ public class NamespaceSet { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ScriptInfo.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ScriptInfo.java index 0e62fdf15..1166f59e2 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ScriptInfo.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ScriptInfo.java @@ -27,46 +27,81 @@ import java.util.ArrayList; import java.util.List; /** - * + * Script info in ABC file. * @author JPEXS */ public class ScriptInfo { + /** + * Modified flag + */ @Internal private boolean modified = true; - public void setModified(boolean modified) { - this.modified = modified; - } - - public boolean isModified() { - return modified; - } - + /** + * Deleted flag + */ @Internal public boolean deleted; - public int init_index; //MethodInfo + /** + * Script initializer method index + */ + public int init_index; + /** + * Traits + */ public Traits traits; + /** + * Script packs cache + */ + private List cachedPacks; + + /** + * Constructs new script info + */ public ScriptInfo() { traits = new Traits(); } + /** + * Constructs new script info. + * @param traits Traits + */ public ScriptInfo(Traits traits) { this.traits = traits; } - private List cachedPacks; - + /** + * Clears packs cache. + */ public void clearPacksCache() { cachedPacks = null; } /** - * - * @param abc + * Set modified flag. + * @param modified Modified flag + */ + public void setModified(boolean modified) { + this.modified = modified; + } + + /** + * Check if script is modified. + * @return True if script is modified + */ + public boolean isModified() { + return modified; + } + + /** + * Gets simple pack name. + * Finds the first public trait package name. + * If there is no public trait or there are more than one public traits, returns null. + * @param abc ABC file * @return Simple pack name - Can be null! */ public DottedChain getSimplePackName(ABC abc) { @@ -90,6 +125,14 @@ public class ScriptInfo { return traits.traits.get(packageTraits.get(0)).getName(abc).getNameWithNamespace(abc.constants, true); } + /** + * Gets script packs. + * @param abc ABC file + * @param scriptIndex Script index + * @param packagePrefix Package prefix + * @param allAbcs All ABC files + * @return Script packs + */ public List getPacks(ABC abc, int scriptIndex, String packagePrefix, List allAbcs) { if (packagePrefix == null && cachedPacks != null) { return new ArrayList<>(cachedPacks); @@ -172,19 +215,42 @@ public class ScriptInfo { return ret; } + /** + * Removes traps - deobfuscation. + * @param scriptIndex Script index + * @param abc ABC file + * @param path Path + * @return Number of removed traps + * @throws InterruptedException Interrupted exception + */ public int removeTraps(int scriptIndex, ABC abc, String path) throws InterruptedException { return traits.removeTraps(scriptIndex, -1, true, abc, path); } + /** + * To string. + * @return String representation + */ @Override public String toString() { return "method_index=" + init_index + "\r\n" + traits.toString(); } + /** + * To string. + * @param abc ABC file + * @param fullyQualifiedNames Fully qualified names + * @return String representation + */ public String toString(ABC abc, List fullyQualifiedNames) { return "method_index=" + init_index + "\r\n" + traits.toString(abc, fullyQualifiedNames); } + /** + * Delete script info. + * @param abc ABC file + * @param d Deleted flag + */ public void delete(ABC abc, boolean d) { deleted = d; abc.method_info.get(init_index).delete(abc, d); diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ValueKind.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ValueKind.java index 8e310537a..3185a6706 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ValueKind.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/ValueKind.java @@ -21,61 +21,137 @@ import com.jpexs.decompiler.flash.ecma.EcmaScript; import com.jpexs.helpers.Helper; /** - * + * Value kind in ABC file. * @author JPEXS */ public class ValueKind { - public static final int CONSTANT_DecimalOrFloat = 0x02; //decimal or float depending on ABC version + /** + * Constant kind: Decimal or float depending on ABC version + */ + public static final int CONSTANT_DecimalOrFloat = 0x02; - public static final int CONSTANT_Int = 0x03; //integer + /** + * Constant kind: Integer + */ + public static final int CONSTANT_Int = 0x03; - public static final int CONSTANT_UInt = 0x04; //uinteger + /** + * Constant kind: Unsigned integer + */ + public static final int CONSTANT_UInt = 0x04; - public static final int CONSTANT_Double = 0x06; //double + /** + * Constant kind: Double + */ + public static final int CONSTANT_Double = 0x06; - public static final int CONSTANT_Utf8 = 0x01; //string + /** + * Constant kind: String + */ + public static final int CONSTANT_Utf8 = 0x01; - public static final int CONSTANT_True = 0x0B; //- + /** + * Constant kind: True + */ + public static final int CONSTANT_True = 0x0B; - public static final int CONSTANT_False = 0x0A; //- + /** + * Constant kind: False + */ + public static final int CONSTANT_False = 0x0A; - public static final int CONSTANT_Null = 0x0C; //- + /** + * Constant kind: Null + */ + public static final int CONSTANT_Null = 0x0C; - public static final int CONSTANT_Undefined = 0x00; //- + /** + * Constant kind: Undefined + */ + public static final int CONSTANT_Undefined = 0x00; - public static final int CONSTANT_Namespace = 0x08; //namespace + /** + * Constant kind: Namespace + */ + public static final int CONSTANT_Namespace = 0x08; - public static final int CONSTANT_PackageNamespace = 0x16; //namespace + /** + * Constant kind: Package namespace + */ + public static final int CONSTANT_PackageNamespace = 0x16; - public static final int CONSTANT_PackageInternalNs = 0x17; //namespace + /** + * Constant kind: Package internal namespace + */ + public static final int CONSTANT_PackageInternalNs = 0x17; - public static final int CONSTANT_ProtectedNamespace = 0x18; //namespace + /** + * Constant kind: Protected namespace + */ + public static final int CONSTANT_ProtectedNamespace = 0x18; - public static final int CONSTANT_ExplicitNamespace = 0x19; //namespace + /** + * Constant kind: Explicit namespace + */ + public static final int CONSTANT_ExplicitNamespace = 0x19; - public static final int CONSTANT_StaticProtectedNs = 0x1A; //namespace + /** + * Constant kind: Static protected namespace + */ + public static final int CONSTANT_StaticProtectedNs = 0x1A; - public static final int CONSTANT_PrivateNs = 0x05; //namespace + /** + * Constant kind: Private namespace + */ + public static final int CONSTANT_PrivateNs = 0x05; - public static final int CONSTANT_Float4 = 0x1E; //float4 + /** + * Constant kind: Float4 + */ + public static final int CONSTANT_Float4 = 0x1E; - private static final int[] optionalKinds = new int[]{0x03, 0x04, 0x06, 0x02, 0x01, 0x0B, 0x0A, 0x0C, 0x00, 0x08, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x05, 0x1E}; + /** + * Kinds + */ + private static final int[] kinds = new int[]{0x03, 0x04, 0x06, 0x02, 0x01, 0x0B, 0x0A, 0x0C, 0x00, 0x08, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x05, 0x1E}; - private static final String[] optionalKindNames = new String[]{"Int", "UInt", "Double", "Decimal/Float", "Utf8", "True", "False", "Null", "Undefined", "Namespace", "PackageNamespace", "PackageInternalNs", "ProtectedNamespace", "ExplicitNamespace", "StaticProtectedNs", "PrivateNamespace", "Float4"}; + /** + * Kind names + */ + private static final String[] kindNames = new String[]{"Int", "UInt", "Double", "Decimal/Float", "Utf8", "True", "False", "Null", "Undefined", "Namespace", "PackageNamespace", "PackageInternalNs", "ProtectedNamespace", "ExplicitNamespace", "StaticProtectedNs", "PrivateNamespace", "Float4"}; + /** + * Value index + */ public int value_index; + /** + * Value kind + */ public int value_kind; + /** + * Constructs new value kind + */ public ValueKind() { } + /** + * Constructs new value kind + * @param value_index Value index + * @param value_kind Value kind + */ public ValueKind(int value_index, int value_kind) { this.value_index = value_index; this.value_kind = value_kind; } + /** + * Convert namespace kind to value kind + * @param nsKind Namespace kind + * @return Value kind + */ public static int nsKindToValueKind(int nsKind) { switch (nsKind) { case Namespace.KIND_EXPLICIT: @@ -96,6 +172,10 @@ public class ValueKind { return 0; } + /** + * Check if value is namespace + * @return True if value is namespace + */ public boolean isNamespace() { switch (value_kind) { case CONSTANT_Namespace: @@ -110,14 +190,19 @@ public class ValueKind { } } + + /** + * Convert value kind to string + * @return String representation of value kind + */ @Override public String toString() { String s = ""; s += value_index + ":"; boolean found = false; - for (int i = 0; i < optionalKinds.length; i++) { - if (optionalKinds[i] == value_kind) { - s += optionalKindNames[i]; + for (int i = 0; i < kinds.length; i++) { + if (kinds[i] == value_kind) { + s += kindNames[i]; found = true; break; } @@ -128,6 +213,11 @@ public class ValueKind { return s; } + /** + * Convert value kind to string + * @param abc ABC file + * @return String representation of value kind + */ public String toString(ABC abc) { String ret = "?"; switch (value_kind) { @@ -181,6 +271,11 @@ public class ValueKind { return ret; } + /** + * Convert value kind to P-code string + * @param abc ABC file + * @return P-code string representation of value kind + */ public String toASMString(ABC abc) { String ret = "?"; switch (value_kind) { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Trait.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Trait.java index 50c82d5d5..bdfdcdc36 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Trait.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Trait.java @@ -56,57 +56,132 @@ import java.util.Map.Entry; import java.util.Set; /** - * + * Trait in ABC file. * @author JPEXS */ public abstract class Trait implements Cloneable, Serializable { + /** + * Goto constructor definition metadata identifier + */ public static final String METADATA_CTOR_DEFINITION = "__go_to_ctor_definition_help"; + /** + * Goto definition metadata identifier + */ public static final String METADATA_DEFINITION = "__go_to_definition_help"; + /** + * Empty metadata array + */ private static final int[] EMPTY_METADATA_ARRAY = new int[0]; + /** + * Name index - index to multiname constant pool + */ public int name_index; + /** + * Kind type + */ public int kindType; + /** + * Kind flags + */ public int kindFlags; + /** + * Metadata + */ public int[] metadata = EMPTY_METADATA_ARRAY; + /** + * File offset + */ public long fileOffset; + /** + * Bytes + */ public byte[] bytes; + /** + * Attribute: Trait is final + */ public static final int ATTR_Final = 0x1; + /** + * Attribute: Trait has override flag + */ public static final int ATTR_Override = 0x2; + /** + * Attribute: Trait has metadata + */ public static final int ATTR_Metadata = 0x4; + /** + * Attribute: Unknown + */ public static final int ATTR_0x8 = 0x8; //unknown + /** + * Trait kind: Slot + */ public static final int TRAIT_SLOT = 0; + /** + * Trait kind: Method + */ public static final int TRAIT_METHOD = 1; + /** + * Trait kind: Getter + */ public static final int TRAIT_GETTER = 2; + /** + * Trait kind: Setter + */ public static final int TRAIT_SETTER = 3; + /** + * Trait kind: Class + */ public static final int TRAIT_CLASS = 4; + /** + * Trait kind: Function + */ public static final int TRAIT_FUNCTION = 5; + /** + * Trait kind: Const + */ public static final int TRAIT_CONST = 6; + /** + * Deleted flag + */ public boolean deleted = false; + /** + * Deletes trait. + * @param abc ABC + * @param d Deleted flag + */ public void delete(ABC abc, boolean d) { deleted = d; } + /** + * Gets metadata table. + * @param parent Parent trait + * @param convertData Convert data + * @param abc ABC + * @return Metadata table + */ public final List>> getMetaDataTable(Trait parent, ConvertData convertData, ABC abc) { List>> ret = new ArrayList<>(); for (int m : metadata) { @@ -175,24 +250,51 @@ public abstract class Trait implements Cloneable, Serializable { return ret; } + /** + * Gets package. + * @param abc ABC + * @return Package + */ protected DottedChain getPackage(ABC abc) { return getName(abc).getSimpleNamespaceName(abc.constants); } - public void getDependencies(AbcIndexing abcIndex, int scriptIndex, int classIndex, boolean isStatic, String ignoredCustom, ABC abc, List dependencies, DottedChain ignorePackage, List fullyQualifiedNames, List uses) throws InterruptedException { - if (ignoredCustom == null) { + /** + * Gets dependencies. + * @param abcIndex ABC indexing + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param customNamespace Custom namespace + * @param abc ABC + * @param dependencies Dependencies + * @param ignorePackage Ignore package + * @param fullyQualifiedNames Fully qualified names + * @param uses Uses + * @throws InterruptedException + */ + public void getDependencies(AbcIndexing abcIndex, int scriptIndex, int classIndex, boolean isStatic, String customNamespace, ABC abc, List dependencies, DottedChain ignorePackage, List fullyQualifiedNames, List uses) throws InterruptedException { + if (customNamespace == null) { Multiname m = getName(abc); int nskind = m.getSimpleNamespaceKind(abc.constants); if (nskind == Namespace.KIND_NAMESPACE) { - ignoredCustom = m.getSimpleNamespaceName(abc.constants).toRawString(); + customNamespace = m.getSimpleNamespaceName(abc.constants).toRawString(); } } - DependencyParser.parseDependenciesFromMultiname(abcIndex, ignoredCustom, abc, dependencies, getName(abc), ignorePackage, fullyQualifiedNames, DependencyType.NAMESPACE, uses); + DependencyParser.parseDependenciesFromMultiname(abcIndex, customNamespace, abc, dependencies, getName(abc), ignorePackage, fullyQualifiedNames, DependencyType.NAMESPACE, uses); //DependencyParser.parseUsagesFromMultiname(ignoredCustom, abc, dependencies, getName(abc), ignorePackage, fullyQualifiedNames, DependencyType.NAMESPACE); } + /* + * List of built-in classes that are not imported by default + */ private static final String[] builtInClasses = {"ArgumentError", "arguments", "Array", "Boolean", "Class", "Date", "DefinitionError", "Error", "EvalError", "Function", "int", "JSON", "Math", "Namespace", "Number", "Object", "QName", "RangeError", "ReferenceError", "RegExp", "SecurityError", "String", "SyntaxError", "TypeError", "uint", "URIError", "VerifyError", "XML", "XMLList"}; + /** + * Checks if class is built-in. + * @param name Name + * @return True if class is built-in + */ private static boolean isBuiltInClass(String name) { for (String g : builtInClasses) { if (g.equals(name)) { @@ -202,6 +304,15 @@ public abstract class Trait implements Cloneable, Serializable { return false; } + /** + * Gets all class trait names. + * @param traitNamesInThisScript Trait names in this script + * @param abcIndex ABC indexing + * @param abc ABC + * @param classIndex Class index + * @param scriptIndex Script index + * @param isParent Is parent + */ private void getAllClassTraitNames(List traitNamesInThisScript, AbcIndexing abcIndex, ABC abc, int classIndex, Integer scriptIndex, boolean isParent) { boolean publicProtectedOnly = isParent; for (Trait it : abc.instance_info.get(classIndex).instance_traits.traits) { @@ -232,6 +343,18 @@ public abstract class Trait implements Cloneable, Serializable { } } + /** + * Writes imports. + * @param abcIndex ABC indexing + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param abc ABC + * @param writer Writer + * @param ignorePackage Ignore package + * @param fullyQualifiedNames Fully qualified names + * @throws InterruptedException + */ public void writeImports(AbcIndexing abcIndex, int scriptIndex, int classIndex, boolean isStatic, ABC abc, GraphTextWriter writer, DottedChain ignorePackage, List fullyQualifiedNames) throws InterruptedException { List namesInThisPackage = new ArrayList<>(); @@ -359,6 +482,14 @@ public abstract class Trait implements Cloneable, Serializable { } } + /** + * Gets metadata. + * @param parent Parent trait + * @param convertData Convert data + * @param abc ABC + * @param writer Writer + * @return Writer + */ public final GraphTextWriter getMetaData(Trait parent, ConvertData convertData, ABC abc, GraphTextWriter writer) { List>> md = getMetaDataTable(parent, convertData, abc); for (Entry> en : md) { @@ -392,10 +523,21 @@ public abstract class Trait implements Cloneable, Serializable { return writer; } + /** + * Checks if trait is API versioned. + * @param abc ABC + * @return True if trait is API versioned + */ public boolean isApiVersioned(ABC abc) { return abc.constants.getMultiname(name_index).isApiVersioned(abc.constants); } + /** + * Gets API versions. + * @param abc ABC + * @param writer Writer + * @return Writer + */ public final GraphTextWriter getApiVersions(ABC abc, GraphTextWriter writer) { List apiVersions = abc.constants.getMultiname(name_index).getApiVersions(abc.constants); for (int version : apiVersions) { @@ -404,6 +546,15 @@ public abstract class Trait implements Cloneable, Serializable { return writer; } + /** + * Gets modifiers. + * @param abc ABC + * @param isStatic Is static + * @param insideInterface Inside interface + * @param writer Writer + * @param classIndex Class index + * @return Writer + */ public final GraphTextWriter getModifiers(ABC abc, boolean isStatic, boolean insideInterface, GraphTextWriter writer, int classIndex) { if ((kindFlags & ATTR_Final) > 0) { if (!isStatic) { @@ -479,25 +630,83 @@ public abstract class Trait implements Cloneable, Serializable { return writer; } + /** + * To string. + * @return String + */ @Override public String toString() { return "name_index=" + name_index + " kind=" + kindType + " metadata=" + Helper.intArrToString(metadata); } + /** + * To string. + * @param abc ABC + * @param fullyQualifiedNames Fully qualified names + * @return String + */ public String toString(ABC abc, List fullyQualifiedNames) { return abc.constants.getMultiname(name_index).toString(abc.constants, fullyQualifiedNames) + " kind=" + kindType + " metadata=" + Helper.intArrToString(metadata); } + /** + * To string. + * @param abcIndex ABC indexing + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param insideInterface Inside interface + * @return Writer + * @throws InterruptedException + */ public GraphTextWriter toString(AbcIndexing abcIndex, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, GraphTextWriter writer, List fullyQualifiedNames, boolean parallel, boolean insideInterface) throws InterruptedException { writer.appendNoHilight(abc.constants.getMultiname(name_index).toString(abc.constants, fullyQualifiedNames) + " kind=" + kindType + " metadata=" + Helper.intArrToString(metadata)); return writer; } + /** + * Converts trait. + * @param abcIndex ABC indexing + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param scopeStack Scope stack + * @throws InterruptedException + */ public void convert(AbcIndexing abcIndex, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, NulWriter writer, List fullyQualifiedNames, boolean parallel, ScopeStack scopeStack) throws InterruptedException { } + /** + * Converts trait header. + * @param abc ABC + * @param writer Writer + * @return Writer + */ public abstract GraphTextWriter convertTraitHeader(ABC abc, GraphTextWriter writer); + /** + * Converts common header flags. + * @param traitType Trait type + * @param abc ABC + * @param writer Writer + * @return Writer + */ public GraphTextWriter convertCommonHeaderFlags(String traitType, ABC abc, GraphTextWriter writer) { writer.appendNoHilight("trait "); writer.hilightSpecial(traitType, HighlightSpecialType.TRAIT_TYPE); @@ -572,6 +781,24 @@ public abstract class Trait implements Cloneable, Serializable { return writer; } + /** + * ToString conversion including package. + * @param abcIndex ABC indexing + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param insideInterface Inside interface + * @return Writer + * @throws InterruptedException + */ public GraphTextWriter toStringPackaged(AbcIndexing abcIndex, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, GraphTextWriter writer, List fullyQualifiedNames, boolean parallel, boolean insideInterface) throws InterruptedException { Multiname name = abc.constants.getMultiname(name_index); int nskind = name.getSimpleNamespaceKind(abc.constants); @@ -589,6 +816,23 @@ public abstract class Trait implements Cloneable, Serializable { return writer; } + /** + * Converts trait including package. + * @param abcIndex ABC indexing + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param scopeStack Scope stack + * @throws InterruptedException + */ public void convertPackaged(AbcIndexing abcIndex, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, NulWriter writer, List fullyQualifiedNames, boolean parallel, ScopeStack scopeStack) throws InterruptedException { Multiname name = abc.constants.getMultiname(name_index); int nskind = name.getSimpleNamespaceKind(abc.constants); @@ -598,15 +842,52 @@ public abstract class Trait implements Cloneable, Serializable { } } + /** + * ToString of header. + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param insideInterface Inside interface + * @return Writer + * @throws InterruptedException + */ public GraphTextWriter toStringHeader(Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, GraphTextWriter writer, List fullyQualifiedNames, boolean parallel, boolean insideInterface) throws InterruptedException { toString(null, parent, convertData, path, abc, isStatic, exportMode, scriptIndex, classIndex, writer, fullyQualifiedNames, parallel, insideInterface); return writer; } + /** + * Converts header. + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @throws InterruptedException + */ public void convertHeader(Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, NulWriter writer, List fullyQualifiedNames, boolean parallel) throws InterruptedException { convert(null, parent, convertData, path, abc, isStatic, exportMode, scriptIndex, classIndex, writer, fullyQualifiedNames, parallel, new ScopeStack()); } + /** + * Gets name. + * @param abc ABC + * @return Name + */ public final Multiname getName(ABC abc) { if (name_index == 0) { return null; @@ -615,8 +896,23 @@ public abstract class Trait implements Cloneable, Serializable { } } + /** + * Removes traps - deobfuscation. + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param abc ABC + * @param path Path + * @return Number of removed traps + * @throws InterruptedException + */ public abstract int removeTraps(int scriptIndex, int classIndex, boolean isStatic, ABC abc, String path) throws InterruptedException; + /** + * Gets class path. + * @param abc ABC + * @return Class path + */ public final ClassPath getPath(ABC abc) { Multiname name = getName(abc); Namespace ns = name.getNamespace(abc.constants); @@ -626,6 +922,10 @@ public abstract class Trait implements Cloneable, Serializable { return new ClassPath(packageName, objectName, namespaceSuffix); //assume not null name } + /** + * Clones trait. + * @return Cloned trait + */ @Override public Trait clone() { try { @@ -636,12 +936,29 @@ public abstract class Trait implements Cloneable, Serializable { } } + /** + * Checks if trait is visible. + * @param isStatic Is static + * @param abc ABC + * @return True if trait is visible + */ public boolean isVisible(boolean isStatic, ABC abc) { return true; } + /** + * Gets method infos. + * @param abc ABC + * @param traitId Trait ID + * @param classIndex Class index + * @param methodInfos Method infos + */ public abstract void getMethodInfos(ABC abc, int traitId, int classIndex, List methodInfos); + /** + * Convets kind to string. + * @return String + */ public String getKindToStr() { String traitKindStr = ""; switch (kindType) { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitClass.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitClass.java index 203ddfd9a..1403128fe 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitClass.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitClass.java @@ -53,19 +53,36 @@ import java.util.HashSet; import java.util.List; /** - * + * Class trait in ABC file * @author JPEXS */ public class TraitClass extends Trait implements TraitWithSlot { + /** + * Slot id + */ public int slot_id; + /** + * Class info index + */ public int class_info; + /** + * Is class initializer empty + */ private boolean classInitializerIsEmpty; - private List frameTraitNames = new ArrayList<>(); + /** + * Frame trait names + */ + private final List frameTraitNames = new ArrayList<>(); + /** + * Deletes this trait. + * @param abc ABC + * @param d Deleted flag + */ @Override public void delete(ABC abc, boolean d) { super.delete(abc, d); @@ -73,54 +90,129 @@ public class TraitClass extends Trait implements TraitWithSlot { abc.constants.getMultiname(name_index).deleted = d; } + /** + * Gets slot index. + * @return Slot index + */ @Override public int getSlotIndex() { return slot_id; } + /** + * Gets dependencies. + * @param abcIndex ABC indexing + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param customNamespace Custom namespace + * @param abc ABC + * @param dependencies Dependencies + * @param ignorePackage Ignore package + * @param fullyQualifiedNames Fully qualified names + * @param uses Uses + * @throws InterruptedException + */ @Override - public void getDependencies(AbcIndexing abcIndex, int scriptIndex, int classIndex, boolean isStatic, String customNs, ABC abc, List dependencies, DottedChain ignorePackage, List fullyQualifiedNames, List uses) throws InterruptedException { - super.getDependencies(abcIndex, scriptIndex, -1, false, customNs, abc, dependencies, ignorePackage == null ? getPackage(abc) : ignorePackage, fullyQualifiedNames, uses); + public void getDependencies(AbcIndexing abcIndex, int scriptIndex, int classIndex, boolean isStatic, String customNamespace, ABC abc, List dependencies, DottedChain ignorePackage, List fullyQualifiedNames, List uses) throws InterruptedException { + super.getDependencies(abcIndex, scriptIndex, -1, false, customNamespace, abc, dependencies, ignorePackage == null ? getPackage(abc) : ignorePackage, fullyQualifiedNames, uses); ClassInfo classInfo = abc.class_info.get(class_info); InstanceInfo instanceInfo = abc.instance_info.get(class_info); DottedChain packageName = instanceInfo.getName(abc.constants).getNamespace(abc.constants).getName(abc.constants); //assume not null name //DependencyParser.parseDependenciesFromMultiname(customNs, abc, dependencies, uses, abc.constants.getMultiname(instanceInfo.name_index), packageName, fullyQualifiedNames); if (instanceInfo.super_index > 0) { - DependencyParser.parseDependenciesFromMultiname(abcIndex, customNs, abc, dependencies, abc.constants.getMultiname(instanceInfo.super_index), packageName, fullyQualifiedNames, DependencyType.INHERITANCE, uses); + DependencyParser.parseDependenciesFromMultiname(abcIndex, customNamespace, abc, dependencies, abc.constants.getMultiname(instanceInfo.super_index), packageName, fullyQualifiedNames, DependencyType.INHERITANCE, uses); } for (int i : instanceInfo.interfaces) { - DependencyParser.parseDependenciesFromMultiname(abcIndex, customNs, abc, dependencies, abc.constants.getMultiname(i), packageName, fullyQualifiedNames, DependencyType.INHERITANCE, uses); + DependencyParser.parseDependenciesFromMultiname(abcIndex, customNamespace, abc, dependencies, abc.constants.getMultiname(i), packageName, fullyQualifiedNames, DependencyType.INHERITANCE, uses); } //static - classInfo.static_traits.getDependencies(abcIndex, scriptIndex, class_info, true, customNs, abc, dependencies, packageName, fullyQualifiedNames, uses); + classInfo.static_traits.getDependencies(abcIndex, scriptIndex, class_info, true, customNamespace, abc, dependencies, packageName, fullyQualifiedNames, uses); //static initializer - DependencyParser.parseDependenciesFromMethodInfo(abcIndex, null, scriptIndex, class_info, true, customNs, abc, classInfo.cinit_index, dependencies, packageName, fullyQualifiedNames, new ArrayList<>(), uses); + DependencyParser.parseDependenciesFromMethodInfo(abcIndex, null, scriptIndex, class_info, true, customNamespace, abc, classInfo.cinit_index, dependencies, packageName, fullyQualifiedNames, new ArrayList<>(), uses); //instance - instanceInfo.instance_traits.getDependencies(abcIndex, scriptIndex, class_info, false, customNs, abc, dependencies, packageName, fullyQualifiedNames, uses); + instanceInfo.instance_traits.getDependencies(abcIndex, scriptIndex, class_info, false, customNamespace, abc, dependencies, packageName, fullyQualifiedNames, uses); //instance initializer - DependencyParser.parseDependenciesFromMethodInfo(abcIndex, null, scriptIndex, class_info, false, customNs, abc, instanceInfo.iinit_index, dependencies, packageName, fullyQualifiedNames, new ArrayList<>(), uses); + DependencyParser.parseDependenciesFromMethodInfo(abcIndex, null, scriptIndex, class_info, false, customNamespace, abc, instanceInfo.iinit_index, dependencies, packageName, fullyQualifiedNames, new ArrayList<>(), uses); } + + /** + * ToString of header. + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param insideInterface Inside interface + * @return Writer + * @throws InterruptedException + */ @Override public GraphTextWriter toStringHeader(Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, GraphTextWriter writer, List fullyQualifiedNames, boolean parallel, boolean insideInterface) { abc.instance_info.get(class_info).getClassHeaderStr(convertData.assetsDir, writer, abc, fullyQualifiedNames, false, false /*??*/); return writer; } + /** + * Converts header. + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @throws InterruptedException + */ @Override public void convertHeader(Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, NulWriter writer, List fullyQualifiedNames, boolean parallel) { } + /** + * To string. + * @param abc ABC + * @param fullyQualifiedNames Fully qualified names + * @return String + */ @Override public String toString(ABC abc, List fullyQualifiedNames) { return "Class " + abc.constants.getMultiname(name_index).toString(abc.constants, fullyQualifiedNames) + " slot=" + slot_id + " class_info=" + class_info + " metadata=" + Helper.intArrToString(metadata); } + /** + * To string. + * @param abcIndex ABC indexing + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param insideInterface Inside interface + * @return Writer + * @throws InterruptedException + */ @Override public GraphTextWriter toString(AbcIndexing abcIndex, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, GraphTextWriter writer, List fullyQualifiedNames, boolean parallel, boolean insideInterface) throws InterruptedException { @@ -250,6 +342,23 @@ public class TraitClass extends Trait implements TraitWithSlot { return writer; } + /** + * Converts trait. + * @param abcIndex ABC indexing + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param scopeStack Scope stack + * @throws InterruptedException + */ @Override public void convert(AbcIndexing abcIndex, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, NulWriter writer, List fullyQualifiedNames, boolean parallel, ScopeStack scopeStack) throws InterruptedException { @@ -366,6 +475,16 @@ public class TraitClass extends Trait implements TraitWithSlot { instanceInfo.instance_traits.convert(abcIndex, this, convertData, path + "/" + instanceInfoName, abc, false, exportMode, false, scriptIndex, class_info, writer, fullyQualifiedNames, parallel, newScopeStack); } + /** + * Removes traps - deobfuscation. + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param abc ABC + * @param path Path + * @return Number of removed traps + * @throws InterruptedException + */ @Override public int removeTraps(int scriptIndex, int classIndex, boolean isStatic, ABC abc, String path) throws InterruptedException { ClassInfo classInfo = abc.class_info.get(class_info); @@ -384,12 +503,23 @@ public class TraitClass extends Trait implements TraitWithSlot { return ret; } + + /** + * Clones trait. + * @return Cloned trait + */ @Override public TraitClass clone() { TraitClass ret = (TraitClass) super.clone(); return ret; } + /** + * Converts trait. + * @param abc ABC + * @param writer Writer + * @return Writer + */ @Override public GraphTextWriter convertTraitHeader(ABC abc, GraphTextWriter writer) { convertCommonHeaderFlags("class", abc, writer); @@ -431,6 +561,13 @@ public class TraitClass extends Trait implements TraitWithSlot { return writer; } + /** + * Gets method infos. + * @param abc ABC + * @param traitId Trait ID + * @param classIndex Class index + * @param methodInfos Method infos + */ @Override public void getMethodInfos(ABC abc, int traitId, int classIndex, List methodInfos) { InstanceInfo instanceInfo = abc.instance_info.get(class_info); diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitFunction.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitFunction.java index 0ee96532b..34d81f079 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitFunction.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitFunction.java @@ -35,15 +35,26 @@ import java.util.HashSet; import java.util.List; /** - * + * Function trait in ABC file. * @author JPEXS */ public class TraitFunction extends Trait implements TraitWithSlot { + /** + * Slot id + */ public int slot_id; + /** + * Method info index + */ public int method_info; + /** + * Deletes this trait. + * @param abc ABC + * @param d Deleted flag + */ @Override public void delete(ABC abc, boolean d) { super.delete(abc, d); @@ -52,11 +63,32 @@ public class TraitFunction extends Trait implements TraitWithSlot { abc.method_info.get(method_info).delete(abc, d); } + /** + * Gets slot index. + * @return + */ @Override public int getSlotIndex() { return slot_id; } + /** + * ToString of header. + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param insideInterface Inside interface + * @return Writer + * @throws InterruptedException + */ @Override public GraphTextWriter toStringHeader(Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, GraphTextWriter writer, List fullyQualifiedNames, boolean parallel, boolean insideInterface) { MethodBody body = abc.findBody(method_info); @@ -73,15 +105,54 @@ public class TraitFunction extends Trait implements TraitWithSlot { return writer; } + /** + * Converts header. + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @throws InterruptedException + */ @Override public void convertHeader(Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, NulWriter writer, List fullyQualifiedNames, boolean parallel) { } + /** + * To string. + * @param abc ABC + * @param fullyQualifiedNames Fully qualified names + * @return String + */ @Override public String toString(ABC abc, List fullyQualifiedNames) { return "Function " + abc.constants.getMultiname(name_index).toString(abc.constants, fullyQualifiedNames) + " slot=" + slot_id + " method_info=" + method_info + " metadata=" + Helper.intArrToString(metadata); } + /** + * To string. + * @param abcIndex ABC indexing + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param insideInterface Inside interface + * @return Writer + * @throws InterruptedException + */ @Override public GraphTextWriter toString(AbcIndexing abcIndex, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, GraphTextWriter writer, List fullyQualifiedNames, boolean parallel, boolean insideInterface) throws InterruptedException { writeImports(abcIndex, scriptIndex, classIndex, false, abc, writer, getPackage(abc), fullyQualifiedNames); @@ -104,6 +175,23 @@ public class TraitFunction extends Trait implements TraitWithSlot { return writer; } + /** + * Converts trait. + * @param abcIndex ABC indexing + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param scopeStack Scope stack + * @throws InterruptedException + */ @Override public void convert(AbcIndexing abcIndex, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, NulWriter writer, List fullyQualifiedNames, boolean parallel, ScopeStack scopeStack) throws InterruptedException { fullyQualifiedNames = new ArrayList<>(); @@ -119,6 +207,16 @@ public class TraitFunction extends Trait implements TraitWithSlot { writer.endMethod(); } + /** + * Removes traps - deobfuscation. + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param abc ABC + * @param path Path + * @return Number of removed traps + * @throws InterruptedException + */ @Override public int removeTraps(int scriptIndex, int classIndex, boolean isStatic, ABC abc, String path) throws InterruptedException { int bodyIndex = abc.findBodyIndex(method_info); @@ -128,21 +226,45 @@ public class TraitFunction extends Trait implements TraitWithSlot { return 0; } + /** + * Clones trait. + * @return Cloned trait + */ @Override public TraitFunction clone() { TraitFunction ret = (TraitFunction) super.clone(); return ret; } + /** + * Gets dependencies. + * @param abcIndex ABC indexing + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param customNamespace Custom namespace + * @param abc ABC + * @param dependencies Dependencies + * @param ignorePackage Ignore package + * @param fullyQualifiedNames Fully qualified names + * @param uses Uses + * @throws InterruptedException + */ @Override - public void getDependencies(AbcIndexing abcIndex, int scriptIndex, int classIndex, boolean isStatic, String customNs, ABC abc, List dependencies, DottedChain ignorePackage, List fullyQualifiedNames, List uses) throws InterruptedException { + public void getDependencies(AbcIndexing abcIndex, int scriptIndex, int classIndex, boolean isStatic, String customNamespace, ABC abc, List dependencies, DottedChain ignorePackage, List fullyQualifiedNames, List uses) throws InterruptedException { if (ignorePackage == null) { ignorePackage = getPackage(abc); } - super.getDependencies(abcIndex, scriptIndex, classIndex, false, customNs, abc, dependencies, ignorePackage, fullyQualifiedNames, uses); - DependencyParser.parseDependenciesFromMethodInfo(abcIndex, this, scriptIndex, classIndex, false, customNs, abc, method_info, dependencies, ignorePackage, fullyQualifiedNames, new ArrayList<>(), uses); + super.getDependencies(abcIndex, scriptIndex, classIndex, false, customNamespace, abc, dependencies, ignorePackage, fullyQualifiedNames, uses); + DependencyParser.parseDependenciesFromMethodInfo(abcIndex, this, scriptIndex, classIndex, false, customNamespace, abc, method_info, dependencies, ignorePackage, fullyQualifiedNames, new ArrayList<>(), uses); } + /** + * Converts trait header. + * @param abc ABC + * @param writer Writer + * @return Writer + */ @Override public GraphTextWriter convertTraitHeader(ABC abc, GraphTextWriter writer) { convertCommonHeaderFlags("function", abc, writer); @@ -156,6 +278,13 @@ public class TraitFunction extends Trait implements TraitWithSlot { return writer; } + /** + * Gets method infos. + * @param abc ABC + * @param traitId Trait ID + * @param classIndex Class index + * @param methodInfos Method infos + */ @Override public void getMethodInfos(ABC abc, int traitId, int classIndex, List methodInfos) { methodInfos.add(new MethodId(traitId, classIndex, method_info)); diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitMethodGetterSetter.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitMethodGetterSetter.java index da24c396b..b50df156d 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitMethodGetterSetter.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitMethodGetterSetter.java @@ -39,15 +39,27 @@ import java.util.HashSet; import java.util.List; /** - * + * Method, getter or setter trait in ABC file. * @author JPEXS */ public class TraitMethodGetterSetter extends Trait { - public int disp_id; //compiler assigned value that helps overriding + /** + * Dispatch id. + * Compiler assigned value that helps overriding. + */ + public int disp_id; + /** + * Method info index. + */ public int method_info; + /** + * Deletes this trait. + * @param abc ABC + * @param d Deleted flag + */ @Override public void delete(ABC abc, boolean d) { super.delete(abc, d); @@ -56,27 +68,73 @@ public class TraitMethodGetterSetter extends Trait { abc.method_info.get(method_info).delete(abc, d); } + /** + * Converts header. + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @throws InterruptedException + */ @Override public void convertHeader(Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, NulWriter writer, List fullyQualifiedNames, boolean parallel) { } + /** + * Gets dependencies. + * @param abcIndex ABC indexing + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param customNamespace Custom namespace + * @param abc ABC + * @param dependencies Dependencies + * @param ignorePackage Ignore package + * @param fullyQualifiedNames Fully qualified names + * @param uses Uses + * @throws InterruptedException + */ @Override - public void getDependencies(AbcIndexing abcIndex, int scriptIndex, int classIndex, boolean isStatic, String customNs, ABC abc, List dependencies, DottedChain ignorePackage, List fullyQualifiedNames, List uses) throws InterruptedException { + public void getDependencies(AbcIndexing abcIndex, int scriptIndex, int classIndex, boolean isStatic, String customNamespace, ABC abc, List dependencies, DottedChain ignorePackage, List fullyQualifiedNames, List uses) throws InterruptedException { if (ignorePackage == null) { ignorePackage = getPackage(abc); } - super.getDependencies(abcIndex, scriptIndex, classIndex, isStatic, customNs, abc, dependencies, ignorePackage, fullyQualifiedNames, uses); + super.getDependencies(abcIndex, scriptIndex, classIndex, isStatic, customNamespace, abc, dependencies, ignorePackage, fullyQualifiedNames, uses); - if (customNs == null) { + if (customNamespace == null) { Multiname m = getName(abc); int nskind = m.getSimpleNamespaceKind(abc.constants); if (nskind == Namespace.KIND_NAMESPACE) { - customNs = m.getSimpleNamespaceName(abc.constants).toRawString(); + customNamespace = m.getSimpleNamespaceName(abc.constants).toRawString(); } } - DependencyParser.parseDependenciesFromMethodInfo(abcIndex, this, scriptIndex, classIndex, isStatic, customNs, abc, method_info, dependencies, ignorePackage, fullyQualifiedNames, new ArrayList<>(), uses); + DependencyParser.parseDependenciesFromMethodInfo(abcIndex, this, scriptIndex, classIndex, isStatic, customNamespace, abc, method_info, dependencies, ignorePackage, fullyQualifiedNames, new ArrayList<>(), uses); } + /** + * ToString of header. + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param insideInterface Inside interface + * @return Writer + * @throws InterruptedException + */ @Override public GraphTextWriter toStringHeader(Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, GraphTextWriter writer, List fullyQualifiedNames, boolean parallel, boolean insideInterface) { String addKind = ""; @@ -103,6 +161,23 @@ public class TraitMethodGetterSetter extends Trait { return writer; } + /** + * Converts trait. + * @param abcIndex ABC indexing + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param scopeStack Scope stack + * @throws InterruptedException + */ @Override public void convert(AbcIndexing abcIndex, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, NulWriter writer, List fullyQualifiedNames, boolean parallel, ScopeStack scopeStack) throws InterruptedException { if (classIndex < 0) { @@ -124,11 +199,35 @@ public class TraitMethodGetterSetter extends Trait { writer.endMethod(); } + /** + * To string. + * @param abc ABC + * @param fullyQualifiedNames Fully qualified names + * @return String + */ @Override public String toString(ABC abc, List fullyQualifiedNames) { return "0x" + Helper.formatAddress(fileOffset) + " " + Helper.byteArrToString(bytes) + " MethodGetterSetter " + abc.constants.getMultiname(name_index).toString(abc.constants, fullyQualifiedNames) + " disp_id=" + disp_id + " method_info=" + method_info + " metadata=" + Helper.intArrToString(metadata); } + /** + * To string. + * @param abcIndex ABC indexing + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param insideInterface Inside interface + * @return Writer + * @throws InterruptedException + */ @Override public GraphTextWriter toString(AbcIndexing abcIndex, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, GraphTextWriter writer, List fullyQualifiedNames, boolean parallel, boolean insideInterface) throws InterruptedException { @@ -182,6 +281,16 @@ public class TraitMethodGetterSetter extends Trait { return writer; } + /** + * Removes traps - deobfuscation. + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param abc ABC + * @param path Path + * @return Number of removed traps + * @throws InterruptedException + */ @Override public int removeTraps(int scriptIndex, int classIndex, boolean isStatic, ABC abc, String path) throws InterruptedException { int bodyIndex = abc.findBodyIndex(method_info); @@ -191,12 +300,22 @@ public class TraitMethodGetterSetter extends Trait { return 0; } + /** + * Clones trait. + * @return Cloned trait + */ @Override public TraitMethodGetterSetter clone() { TraitMethodGetterSetter ret = (TraitMethodGetterSetter) super.clone(); return ret; } + /** + * Checks if trait is visible. + * @param isStatic Is static + * @param abc ABC + * @return True if trait is visible + */ @Override public boolean isVisible(boolean isStatic, ABC abc) { if (Configuration.handleSkinPartsAutomatically.get()) { @@ -215,6 +334,12 @@ public class TraitMethodGetterSetter extends Trait { return true; } + /** + * Converts trait header. + * @param abc ABC + * @param writer Writer + * @return Writer + */ @Override public GraphTextWriter convertTraitHeader(ABC abc, GraphTextWriter writer) { @@ -239,6 +364,13 @@ public class TraitMethodGetterSetter extends Trait { return writer; } + /** + * Gets method infos. + * @param abc ABC + * @param traitId Trait ID + * @param classIndex Class index + * @param methodInfos Method infos + */ @Override public void getMethodInfos(ABC abc, int traitId, int classIndex, List methodInfos) { methodInfos.add(new MethodId(traitId, classIndex, method_info)); diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitSlotConst.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitSlotConst.java index e04a806ab..f3b2f1e00 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitSlotConst.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitSlotConst.java @@ -46,19 +46,36 @@ import java.util.HashSet; import java.util.List; /** - * + * Slot or const trait in ABC file. * @author JPEXS */ public class TraitSlotConst extends Trait implements TraitWithSlot { + /** + * Slot index. + */ public int slot_id; + /** + * Type index. + */ public int type_index; + /** + * Value index. + */ public int value_index; + /** + * Value kind. + */ public int value_kind; + /** + * Deletes this trait. + * @param abc ABC + * @param d Deleted flag + */ @Override public void delete(ABC abc, boolean d) { super.delete(abc, d); @@ -66,11 +83,21 @@ public class TraitSlotConst extends Trait implements TraitWithSlot { abc.constants.getMultiname(name_index).deleted = d; } + /** + * Gets slot index. + * @return Slot index + */ @Override public int getSlotIndex() { return slot_id; } + /** + * Gets type as string. + * @param constants Constant pool + * @param fullyQualifiedNames Fully qualified names + * @return Type as string + */ public String getType(AVM2ConstantPool constants, List fullyQualifiedNames) { String typeStr = "*"; if (type_index > 0) { @@ -79,6 +106,13 @@ public class TraitSlotConst extends Trait implements TraitWithSlot { return typeStr; } + /** + * Gets name as string. + * @param writer Writer + * @param abc ABC + * @param fullyQualifiedNames Fully qualified names + * @return Writer + */ public GraphTextWriter getNameStr(GraphTextWriter writer, ABC abc, List fullyQualifiedNames) { String typeStr = getType(abc.constants, fullyQualifiedNames); ValueKind val = null; @@ -102,6 +136,12 @@ public class TraitSlotConst extends Trait implements TraitWithSlot { return writer; } + /** + * Checks if value is present. (Can be assigned in initializer) + * @param abc ABC + * @param convertData Convert data + * @return True if value is present + */ private boolean hasValueStr(ABC abc, ConvertData convertData) { if (convertData.assignedValues.containsKey(this)) { return true; @@ -114,6 +154,17 @@ public class TraitSlotConst extends Trait implements TraitWithSlot { return value_kind != 0; } + /** + * Gets value as string. + * @param abcIndex ABC indexing + * @param exportMode Export mode + * @param parent Parent + * @param convertData Convert data + * @param writer Writer + * @param abc ABC + * @param fullyQualifiedNames Fully qualified names + * @throws InterruptedException + */ public void getValueStr(AbcIndexing abcIndex, ScriptExportMode exportMode, Trait parent, ConvertData convertData, GraphTextWriter writer, ABC abc, List fullyQualifiedNames) throws InterruptedException { if (convertData.assignedValues.containsKey(this)) { @@ -143,6 +194,10 @@ public class TraitSlotConst extends Trait implements TraitWithSlot { } } + /** + * Checks if the value is namespace. + * @return True if the value is namespace + */ public boolean isNamespace() { if (value_kind != 0) { ValueKind val = new ValueKind(value_index, value_kind); @@ -151,6 +206,12 @@ public class TraitSlotConst extends Trait implements TraitWithSlot { return false; } + /** + * To string. + * @param abc ABC + * @param fullyQualifiedNames Fully qualified names + * @return String + */ @Override public String toString(ABC abc, List fullyQualifiedNames) { String typeStr = "*"; @@ -160,6 +221,24 @@ public class TraitSlotConst extends Trait implements TraitWithSlot { return "0x" + Helper.formatAddress(fileOffset) + " " + Helper.byteArrToString(bytes) + " SlotConst " + abc.constants.getMultiname(name_index).toString(abc.constants, fullyQualifiedNames) + " slot=" + slot_id + " type=" + typeStr + " value=" + (new ValueKind(value_index, value_kind)).toString(abc) + " metadata=" + Helper.intArrToString(metadata); } + /** + * To string. + * @param abcIndex ABC indexing + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param insideInterface Inside interface + * @return Writer + * @throws InterruptedException + */ @Override public GraphTextWriter toString(AbcIndexing abcIndex, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, GraphTextWriter writer, List fullyQualifiedNames, boolean parallel, boolean insideInterface) throws InterruptedException { getMetaData(parent, convertData, abc, writer); @@ -193,6 +272,23 @@ public class TraitSlotConst extends Trait implements TraitWithSlot { return writer.appendNoHilight(";").newLine(); } + /** + * Converts trait. + * @param abcIndex ABC indexing + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC + * @param isStatic Is static + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel + * @param scopeStack Scope stack + * @throws InterruptedException + */ @Override public void convert(AbcIndexing abcIndex, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, NulWriter writer, List fullyQualifiedNames, boolean parallel, ScopeStack scopeStack) throws InterruptedException { getNameStr(writer, abc, fullyQualifiedNames); @@ -201,35 +297,77 @@ public class TraitSlotConst extends Trait implements TraitWithSlot { } } + /** + * Checks if the trait is const. + * @return True if the trait is const + */ public boolean isConst() { return kindType == TRAIT_CONST; } + /** + * Checks if the trait is var (= slot). + * @return True if the trait is var + */ public boolean isVar() { return kindType == TRAIT_SLOT; } + /** + * Removes traps - deobfuscation. + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param abc ABC + * @param path Path + * @return Number of removed traps + * @throws InterruptedException + */ @Override public int removeTraps(int scriptIndex, int classIndex, boolean isStatic, ABC abc, String path) { //do nothing return 0; } + /** + * Clones the trait. + * @return Cloned trait + */ @Override public TraitSlotConst clone() { TraitSlotConst ret = (TraitSlotConst) super.clone(); return ret; } + /** + * Gets dependencies. + * @param abcIndex ABC indexing + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param customNamespace Custom namespace + * @param abc ABC + * @param dependencies Dependencies + * @param ignorePackage Ignore package + * @param fullyQualifiedNames Fully qualified names + * @param uses Uses + * @throws InterruptedException + */ @Override - public void getDependencies(AbcIndexing abcIndex, int scriptIndex, int classIndex, boolean isStatic, String customNs, ABC abc, List dependencies, DottedChain ignorePackage, List fullyQualifiedNames, List uses) throws InterruptedException { + public void getDependencies(AbcIndexing abcIndex, int scriptIndex, int classIndex, boolean isStatic, String customNamespace, ABC abc, List dependencies, DottedChain ignorePackage, List fullyQualifiedNames, List uses) throws InterruptedException { if (ignorePackage == null) { ignorePackage = getPackage(abc); } - super.getDependencies(abcIndex, scriptIndex, classIndex, isStatic, customNs, abc, dependencies, ignorePackage, fullyQualifiedNames, uses); - DependencyParser.parseDependenciesFromMultiname(abcIndex, customNs, abc, dependencies, abc.constants.getMultiname(type_index), getPackage(abc), fullyQualifiedNames, DependencyType.SIGNATURE, uses); + super.getDependencies(abcIndex, scriptIndex, classIndex, isStatic, customNamespace, abc, dependencies, ignorePackage, fullyQualifiedNames, uses); + DependencyParser.parseDependenciesFromMultiname(abcIndex, customNamespace, abc, dependencies, abc.constants.getMultiname(type_index), getPackage(abc), fullyQualifiedNames, DependencyType.SIGNATURE, uses); } + /** + * Checks if trait is visible. + * @param isStatic Is static + * @param abc ABC + * @return True if trait is visible + */ @Override public boolean isVisible(boolean isStatic, ABC abc) { @@ -251,6 +389,12 @@ public class TraitSlotConst extends Trait implements TraitWithSlot { return true; } + /** + * Converts trait header. + * @param abc ABC + * @param writer Writer + * @return Writer + */ @Override public GraphTextWriter convertTraitHeader(ABC abc, GraphTextWriter writer) { convertCommonHeaderFlags(isConst() ? "const" : "slot", abc, writer); @@ -269,6 +413,13 @@ public class TraitSlotConst extends Trait implements TraitWithSlot { return writer; } + /** + * Gets method infos. + * @param abc ABC + * @param traitId Trait ID + * @param classIndex Class index + * @param methodInfos Method infos + */ @Override public void getMethodInfos(ABC abc, int traitId, int classIndex, List methodInfos) { } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitType.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitType.java index c86641cda..fc78e76cc 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitType.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitType.java @@ -17,7 +17,7 @@ package com.jpexs.decompiler.flash.abc.types.traits; /** - * + * Trait type. * @author JPEXS */ public enum TraitType { @@ -27,6 +27,11 @@ public enum TraitType { INITIALIZER, SCRIPT_INITIALIZER; + /** + * Gets trait type for trait. + * @param t Trait + * @return Trait type + */ public static TraitType getTypeForTrait(Trait t) { if (t instanceof TraitMethodGetterSetter) { return METHOD; diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitWithSlot.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitWithSlot.java index 5a89e73a8..fc678e142 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitWithSlot.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/TraitWithSlot.java @@ -17,10 +17,14 @@ package com.jpexs.decompiler.flash.abc.types.traits; /** - * + * Trait with slot index interface. * @author JPEXS */ public interface TraitWithSlot { + /** + * Gets slot index. + * @return Slot index + */ public int getSlotIndex(); } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Traits.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Traits.java index 2bc7a86a4..be26361b8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Traits.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/types/traits/Traits.java @@ -46,32 +46,62 @@ import java.util.logging.Level; import java.util.logging.Logger; /** - * + * Represents a list of traits in ABC file. * @author JPEXS */ public class Traits implements Cloneable, Serializable { + /** + * List of traits + */ public List traits; + /** + * Constructs a new Traits object. + */ public Traits() { traits = new ArrayList<>(); } + /** + * Constructs a new Traits object with the specified initial capacity. + * @param initialCapacity Initial capacity + */ public Traits(int initialCapacity) { traits = new ArrayList<>(initialCapacity); } + /** + * Deletes traits. + * @param abc ABC file + * @param d Delete flag + */ public void delete(ABC abc, boolean d) { for (Trait t : traits) { t.delete(abc, d); } } + /** + * Adds a trait to the list. + * @param t Trait to add + * @return Index of the added trait + */ public int addTrait(Trait t) { traits.add(t); return traits.size() - 1; } + /** + * Removes traps - deobfuscation. + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static + * @param abc ABC file + * @param path Path + * @return Number of removed traps + * @throws InterruptedException + */ public int removeTraps(int scriptIndex, int classIndex, boolean isStatic, ABC abc, String path) throws InterruptedException { int ret = 0; for (Trait t : traits) { @@ -80,6 +110,10 @@ public class Traits implements Cloneable, Serializable { return ret; } + /** + * To string. + * @return String representation + */ @Override public String toString() { String s = ""; @@ -92,6 +126,12 @@ public class Traits implements Cloneable, Serializable { return s; } + /** + * To string. + * @param abc ABC file + * @param fullyQualifiedNames Fully qualified names + * @return String representation + */ public String toString(ABC abc, List fullyQualifiedNames) { String s = ""; for (int t = 0; t < traits.size(); t++) { @@ -103,40 +143,110 @@ public class Traits implements Cloneable, Serializable { return s; } + /** + * Conversion task. + */ private class TraitConvertTask implements Callable { + /** + * Trait + */ Trait trait; + /** + * Make packages flag + */ boolean makePackages; + /** + * Path + */ String path; + /** + * ABC file + */ ABC abc; + /** + * Is static flag + */ boolean isStatic; + /** + * Export mode + */ ScriptExportMode exportMode; + /** + * Script index + */ int scriptIndex; + /** + * Class index + */ int classIndex; + /** + * Writer + */ NulWriter writer; + /** + * Fully qualified names + */ List fullyQualifiedNames; + /** + * Trait index + */ int traitIndex; + /** + * Parallel flag + */ boolean parallel; + /** + * Parent trait + */ Trait parent; + /** + * Convert data + */ ConvertData convertData; + /** + * ABC indexing + */ AbcIndexing abcIndex; + /** + * Scope stack + */ ScopeStack scopeStack; + /** + * Constructs a new TraitConvertTask object. + * @param abcIndex ABC indexing + * @param trait Trait + * @param parent Parent trait + * @param convertData Convert data + * @param makePackages Make packages flag + * @param path Path + * @param abc ABC file + * @param isStatic Is static flag + * @param exportMode Export mode + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param traitIndex Trait index + * @param parallel Parallel flag + * @param scopeStack Scope stack + */ public TraitConvertTask(AbcIndexing abcIndex, Trait trait, Trait parent, ConvertData convertData, boolean makePackages, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, int scriptIndex, int classIndex, NulWriter writer, List fullyQualifiedNames, int traitIndex, boolean parallel, ScopeStack scopeStack) { this.trait = trait; this.parent = parent; @@ -156,6 +266,11 @@ public class Traits implements Cloneable, Serializable { this.scopeStack = scopeStack; } + /** + * Calls the task. + * @return Null + * @throws InterruptedException + */ @Override public Void call() throws InterruptedException { if (makePackages) { @@ -167,6 +282,27 @@ public class Traits implements Cloneable, Serializable { } } + /** + * To string. + * @param abcIndex ABC indexing + * @param traitTypes Trait types + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC file + * @param isStatic Is static flag + * @param exportMode Export mode + * @param makePackages Make packages flag + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel flag + * @param ignoredTraitNames Ignored trait names + * @param insideInterface Inside interface flag + * @return Writer + * @throws InterruptedException + */ public GraphTextWriter toString(AbcIndexing abcIndex, Class[] traitTypes, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, boolean makePackages, int scriptIndex, int classIndex, GraphTextWriter writer, List fullyQualifiedNames, boolean parallel, List ignoredTraitNames, boolean insideInterface) throws InterruptedException { List ordered = new ArrayList<>(traits); @@ -243,6 +379,24 @@ public class Traits implements Cloneable, Serializable { return writer; } + /** + * Converts traits. + * @param abcIndex ABC indexing + * @param parent Parent trait + * @param convertData Convert data + * @param path Path + * @param abc ABC file + * @param isStatic Is static flag + * @param exportMode Export mode + * @param makePackages Make packages flag + * @param scriptIndex Script index + * @param classIndex Class index + * @param writer Writer + * @param fullyQualifiedNames Fully qualified names + * @param parallel Parallel flag + * @param scopeStack Scope stack + * @throws InterruptedException + */ public void convert(AbcIndexing abcIndex, Trait parent, ConvertData convertData, String path, ABC abc, boolean isStatic, ScriptExportMode exportMode, boolean makePackages, int scriptIndex, int classIndex, NulWriter writer, List fullyQualifiedNames, boolean parallel, ScopeStack scopeStack) throws InterruptedException { if (!parallel || traits.size() < 2) { for (int t = 0; t < traits.size(); t++) { @@ -275,6 +429,10 @@ public class Traits implements Cloneable, Serializable { } } + /** + * Clones the traits. + * @return Cloned traits + */ @Override public Traits clone() { try { @@ -293,12 +451,33 @@ public class Traits implements Cloneable, Serializable { } } + /** + * Gets dependencies. + * @param abcIndex ABC indexing + * @param scriptIndex Script index + * @param classIndex Class index + * @param isStatic Is static flag + * @param customNs Custom namespace + * @param abc ABC file + * @param dependencies Dependencies + * @param ignorePackage Ignore package + * @param fullyQualifiedNames Fully qualified names + * @param uses Uses + * @throws InterruptedException + */ public void getDependencies(AbcIndexing abcIndex, int scriptIndex, int classIndex, boolean isStatic, String customNs, ABC abc, List dependencies, DottedChain ignorePackage, List fullyQualifiedNames, List uses) throws InterruptedException { for (Trait t : traits) { t.getDependencies(abcIndex, scriptIndex, classIndex, isStatic, customNs, abc, dependencies, ignorePackage, fullyQualifiedNames, uses); } } + /** + * Gets method infos. + * @param abc ABC file + * @param isStatic Is static flag + * @param classIndex Class index + * @param methodInfos Method infos + */ public void getMethodInfos(ABC abc, boolean isStatic, int classIndex, List methodInfos) { for (int t = 0; t < traits.size(); t++) { Trait trait = traits.get(t); diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/MultinameUsageDetector.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/MultinameUsageDetector.java index 451a66dd5..bb308a672 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/MultinameUsageDetector.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/MultinameUsageDetector.java @@ -41,7 +41,7 @@ import java.util.ArrayList; import java.util.List; /** - * + * Multiname usage detector. * @author JPEXS */ public class MultinameUsageDetector implements UsageDetector { @@ -291,9 +291,4 @@ public class MultinameUsageDetector implements UsageDetector { } } } - - @Override - public void filterUsages(ABC abc, UsagesFilter filter) { - throw new UnsupportedOperationException("Not supported yet."); - } } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/Usage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/Usage.java index ba782b101..eeb1eeaf0 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/Usage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/Usage.java @@ -19,14 +19,26 @@ package com.jpexs.decompiler.flash.abc.usages; import com.jpexs.decompiler.flash.abc.ABC; /** - * + * Usage interface. * @author JPEXS */ public interface Usage { + /** + * Returns the ABC file. + * @return ABC file + */ public ABC getAbc(); + /** + * Returns the index of the usage in the constant pool. + * @return index of the usage in the constant pool + */ public int getIndex(); + /** + * Returns the kind of the usage. + * @return kind of the usage + */ public String getKind(); } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/UsageDetector.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/UsageDetector.java index 497e73e25..862690f8b 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/UsageDetector.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/UsageDetector.java @@ -20,15 +20,24 @@ import com.jpexs.decompiler.flash.abc.ABC; import java.util.List; /** - * + * Usage detector interface. * @author JPEXS */ public interface UsageDetector { - public void filterUsages(ABC abc, UsagesFilter filter); - + /** + * Find usages of a given index. + * @param abc ABC file + * @param index Index + * @return List of usages + */ public List findUsages(ABC abc, int index); + /** + * Find all usages of this kind in the ABC file. + * @param abc ABC file + * @return List of lists of usages + */ public List> findAllUsage(ABC abc); public String getKind(); diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/UsagesFilter.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/UsagesFilter.java deleted file mode 100644 index 2692a74fe..000000000 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/UsagesFilter.java +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright (C) 2010-2024 JPEXS, All rights reserved. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3.0 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library. - */ -package com.jpexs.decompiler.flash.abc.usages; - -/** - * - * @author JPEXS - */ -public interface UsagesFilter { - - public int filterUsage(int originalIndex); -} diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ClassNameMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ClassNameMultinameUsage.java index 78aca19b3..c37032f9e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ClassNameMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ClassNameMultinameUsage.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.types.InstanceInfo; /** - * + * Class name multiname usage. * @author JPEXS */ public class ClassNameMultinameUsage extends MultinameUsage implements DefinitionUsage, InsideClassMultinameUsageInterface { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ConstVarMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ConstVarMultinameUsage.java index 4c2453212..867c0aba9 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ConstVarMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ConstVarMultinameUsage.java @@ -25,10 +25,11 @@ import com.jpexs.decompiler.flash.configuration.Configuration; import com.jpexs.decompiler.flash.exporters.modes.ScriptExportMode; import com.jpexs.decompiler.flash.helpers.HighlightedTextWriter; import com.jpexs.decompiler.flash.helpers.NulWriter; + import java.util.ArrayList; /** - * + * Const or var multiname usage. * @author JPEXS */ public abstract class ConstVarMultinameUsage extends TraitMultinameUsage { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ConstVarNameMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ConstVarNameMultinameUsage.java index c96b58214..779af7b04 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ConstVarNameMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ConstVarNameMultinameUsage.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.types.traits.Traits; /** - * + * Const or var name multiname usage. * @author JPEXS */ public class ConstVarNameMultinameUsage extends ConstVarMultinameUsage implements DefinitionUsage { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ConstVarTypeMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ConstVarTypeMultinameUsage.java index 4fa9b984d..71bd35e59 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ConstVarTypeMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/ConstVarTypeMultinameUsage.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.types.traits.Traits; /** - * + * Const or var type multiname usage. * @author JPEXS */ public class ConstVarTypeMultinameUsage extends ConstVarMultinameUsage { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/DefinitionUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/DefinitionUsage.java index 490ea03a5..a8f6bceb8 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/DefinitionUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/DefinitionUsage.java @@ -17,7 +17,7 @@ package com.jpexs.decompiler.flash.abc.usages.multinames; /** - * + * Definition usage. * @author JPEXS */ public interface DefinitionUsage { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/InsideClassMultinameUsageInterface.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/InsideClassMultinameUsageInterface.java index 316c05f25..d6b8b2248 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/InsideClassMultinameUsageInterface.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/InsideClassMultinameUsageInterface.java @@ -19,14 +19,26 @@ package com.jpexs.decompiler.flash.abc.usages.multinames; import com.jpexs.decompiler.flash.abc.ABC; /** - * + * Inside class multiname usage interface. * @author JPEXS */ public interface InsideClassMultinameUsageInterface { + /** + * Gets the script index. + * @return Script index + */ public int getScriptIndex(); + /** + * Gets the class index. + * @return Class index + */ public int getClassIndex(); + /** + * Gets the ABC. + * @return ABC + */ public ABC getAbc(); } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodBodyMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodBodyMultinameUsage.java index 819046e13..dd48b07a3 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodBodyMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodBodyMultinameUsage.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.types.traits.Traits; /** - * + * Method body multiname usage. * @author JPEXS */ public class MethodBodyMultinameUsage extends MethodMultinameUsage { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodMultinameUsage.java index 8492c9fb7..5887a1ef5 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodMultinameUsage.java @@ -27,7 +27,7 @@ import com.jpexs.decompiler.flash.helpers.NulWriter; import java.util.ArrayList; /** - * + * Method multiname usage. * @author JPEXS */ public abstract class MethodMultinameUsage extends TraitMultinameUsage { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodNameMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodNameMultinameUsage.java index 359593d07..4624e1a05 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodNameMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodNameMultinameUsage.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.types.traits.Traits; /** - * + * Method name multiname usage. * @author JPEXS */ public class MethodNameMultinameUsage extends MethodMultinameUsage implements DefinitionUsage { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodParamsMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodParamsMultinameUsage.java index ce6d19d15..7a73d314c 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodParamsMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodParamsMultinameUsage.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.types.traits.Traits; /** - * + * Method params multiname usage. * @author JPEXS */ public class MethodParamsMultinameUsage extends MethodMultinameUsage { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodReturnTypeMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodReturnTypeMultinameUsage.java index 7031f8756..af06052ac 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodReturnTypeMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MethodReturnTypeMultinameUsage.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.types.traits.Traits; /** - * + * Method return type multiname usage. * @author JPEXS */ public class MethodReturnTypeMultinameUsage extends MethodMultinameUsage { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MultinameUsage.java index d460d7a05..2085b7537 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/MultinameUsage.java @@ -24,7 +24,7 @@ import java.util.ArrayList; import java.util.Objects; /** - * + * Multiname usage. * @author JPEXS */ public abstract class MultinameUsage implements Usage { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/SuperClassMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/SuperClassMultinameUsage.java index d8d230112..871563a61 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/SuperClassMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/SuperClassMultinameUsage.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.types.InstanceInfo; /** - * + * Super class multiname usage. * @author JPEXS */ public class SuperClassMultinameUsage extends MultinameUsage implements InsideClassMultinameUsageInterface { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/SuperInterfaceMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/SuperInterfaceMultinameUsage.java index 32112c6e9..ae04d1fa4 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/SuperInterfaceMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/SuperInterfaceMultinameUsage.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.types.InstanceInfo; /** - * + * Super interface multiname usage. * @author JPEXS */ public class SuperInterfaceMultinameUsage extends MultinameUsage implements InsideClassMultinameUsageInterface { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/TraitMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/TraitMultinameUsage.java index 2c3132d37..1b9345709 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/TraitMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/TraitMultinameUsage.java @@ -23,7 +23,7 @@ import com.jpexs.decompiler.graph.DottedChain; import java.util.Objects; /** - * + * Trait multiname usage. * @author JPEXS */ public abstract class TraitMultinameUsage extends MultinameUsage implements InsideClassMultinameUsageInterface { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/TypeNameMultinameUsage.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/TypeNameMultinameUsage.java index 0baf75a17..30c331eb2 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/TypeNameMultinameUsage.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/multinames/TypeNameMultinameUsage.java @@ -20,7 +20,7 @@ import com.jpexs.decompiler.flash.abc.ABC; import java.util.ArrayList; /** - * + * TypeName multiname usage. * @author JPEXS */ public class TypeNameMultinameUsage extends MultinameUsage { diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/simple/ABCCleaner.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/simple/ABCCleaner.java index 39612fac6..b6b1708aa 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/simple/ABCCleaner.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/simple/ABCCleaner.java @@ -21,24 +21,11 @@ import com.jpexs.decompiler.flash.abc.ABCOutputStream; import com.jpexs.decompiler.flash.abc.avm2.AVM2Code; import com.jpexs.decompiler.flash.abc.avm2.AVM2ConstantPool; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; -import com.jpexs.decompiler.flash.abc.types.ClassInfo; -import com.jpexs.decompiler.flash.abc.types.InstanceInfo; -import com.jpexs.decompiler.flash.abc.types.MetadataInfo; -import com.jpexs.decompiler.flash.abc.types.MethodBody; -import com.jpexs.decompiler.flash.abc.types.MethodInfo; -import com.jpexs.decompiler.flash.abc.types.Multiname; -import com.jpexs.decompiler.flash.abc.types.Namespace; -import com.jpexs.decompiler.flash.abc.types.NamespaceSet; -import com.jpexs.decompiler.flash.abc.types.ScriptInfo; -import com.jpexs.decompiler.flash.abc.types.ValueKind; -import com.jpexs.decompiler.flash.abc.types.traits.Trait; -import com.jpexs.decompiler.flash.abc.types.traits.TraitClass; -import com.jpexs.decompiler.flash.abc.types.traits.TraitFunction; -import com.jpexs.decompiler.flash.abc.types.traits.TraitMethodGetterSetter; -import com.jpexs.decompiler.flash.abc.types.traits.TraitSlotConst; -import com.jpexs.decompiler.flash.abc.types.traits.Traits; +import com.jpexs.decompiler.flash.abc.types.*; +import com.jpexs.decompiler.flash.abc.types.traits.*; import com.jpexs.decompiler.flash.tags.Tag; import com.jpexs.helpers.NulStream; + import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; @@ -46,11 +33,15 @@ import java.util.List; import java.util.Map; /** - * + * Cleans unused items from ABC file. * @author JPEXS */ public class ABCCleaner { + /** + * Cleans unused items from ABC file. + * @param abc ABC file + */ public void clean(ABC abc) { ABCSimpleUsageDetector usageDetector = new ABCSimpleUsageDetector(abc); usageDetector.detect(); @@ -376,5 +367,4 @@ public class ABCCleaner { } } } - } diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/simple/ABCSimpleUsageDetector.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/simple/ABCSimpleUsageDetector.java index 074de8977..1bb17335e 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/simple/ABCSimpleUsageDetector.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/simple/ABCSimpleUsageDetector.java @@ -19,32 +19,20 @@ package com.jpexs.decompiler.flash.abc.usages.simple; import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.avm2.AVM2Code; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; -import com.jpexs.decompiler.flash.abc.types.InstanceInfo; -import com.jpexs.decompiler.flash.abc.types.MetadataInfo; -import com.jpexs.decompiler.flash.abc.types.MethodBody; -import com.jpexs.decompiler.flash.abc.types.MethodInfo; -import com.jpexs.decompiler.flash.abc.types.Multiname; -import com.jpexs.decompiler.flash.abc.types.Namespace; -import com.jpexs.decompiler.flash.abc.types.NamespaceSet; -import com.jpexs.decompiler.flash.abc.types.ValueKind; -import com.jpexs.decompiler.flash.abc.types.traits.Trait; -import com.jpexs.decompiler.flash.abc.types.traits.TraitClass; -import com.jpexs.decompiler.flash.abc.types.traits.TraitFunction; -import com.jpexs.decompiler.flash.abc.types.traits.TraitMethodGetterSetter; -import com.jpexs.decompiler.flash.abc.types.traits.TraitSlotConst; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Stack; +import com.jpexs.decompiler.flash.abc.types.*; +import com.jpexs.decompiler.flash.abc.types.traits.*; + +import java.util.*; /** - * + * Simple usage detector for ABC. * @author JPEXS */ public class ABCSimpleUsageDetector { + /** + * Item kind + */ public static enum ItemKind { INT(true), UINT(true), diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/simple/ABCWalker.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/simple/ABCWalker.java index 2890b414f..160b37d90 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/simple/ABCWalker.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/abc/usages/simple/ABCWalker.java @@ -20,19 +20,16 @@ import com.jpexs.decompiler.flash.abc.ABC; import com.jpexs.decompiler.flash.abc.avm2.AVM2Code; import com.jpexs.decompiler.flash.abc.avm2.instructions.AVM2Instruction; import com.jpexs.decompiler.flash.abc.types.ScriptInfo; -import com.jpexs.decompiler.flash.abc.types.traits.Trait; -import com.jpexs.decompiler.flash.abc.types.traits.TraitClass; -import com.jpexs.decompiler.flash.abc.types.traits.TraitFunction; -import com.jpexs.decompiler.flash.abc.types.traits.TraitMethodGetterSetter; -import com.jpexs.decompiler.flash.abc.types.traits.TraitSlotConst; -import com.jpexs.decompiler.flash.abc.types.traits.Traits; +import com.jpexs.decompiler.flash.abc.types.traits.*; + import java.util.HashSet; import java.util.List; import java.util.Set; import java.util.Stack; /** - * + * Walker for ABC. + * Used in Simple usage detector. * @author JPEXS */ public abstract class ABCWalker {