C++: Opcode cleanup

- Remove unused `MemoryAccessOpcode`
- Make `OpcodeWithCondition` private
- Add QLDoc for `Opcode` module
This commit is contained in:
Dave Bartolomeo
2020-06-26 09:04:37 -04:00
parent beb66299e9
commit f48948c604
2 changed files with 8 additions and 6 deletions

View File

@@ -174,15 +174,13 @@ abstract class CopyOpcode extends Opcode { }
abstract class ConvertToBaseOpcode extends UnaryOpcode { }
abstract class MemoryAccessOpcode extends Opcode { }
abstract class ReturnOpcode extends Opcode { }
abstract class ThrowOpcode extends Opcode { }
abstract class CatchOpcode extends Opcode { }
abstract class OpcodeWithCondition extends Opcode {
abstract private class OpcodeWithCondition extends Opcode {
final override predicate hasOperandInternal(OperandTag tag) { tag instanceof ConditionOperandTag }
}
@@ -336,6 +334,9 @@ abstract class ReadSideEffectOpcode extends SideEffectOpcode {
*/
abstract class WriteSideEffectOpcode extends SideEffectOpcode { }
/**
* Provides `Opcode`s that specify the operation performed by an `Instruction`.
*/
module Opcode {
class NoOp extends Opcode, TNoOp {
final override string toString() { result = "NoOp" }