summaryrefslogtreecommitdiffstats
path: root/debuginfo-tests/dexter/dex/command/CommandBase.py
diff options
context:
space:
mode:
Diffstat (limited to 'debuginfo-tests/dexter/dex/command/CommandBase.py')
-rw-r--r--debuginfo-tests/dexter/dex/command/CommandBase.py54
1 files changed, 0 insertions, 54 deletions
diff --git a/debuginfo-tests/dexter/dex/command/CommandBase.py b/debuginfo-tests/dexter/dex/command/CommandBase.py
deleted file mode 100644
index 49e908623df..00000000000
--- a/debuginfo-tests/dexter/dex/command/CommandBase.py
+++ /dev/null
@@ -1,54 +0,0 @@
-# DExTer : Debugging Experience Tester
-# ~~~~~~ ~ ~~ ~ ~~
-#
-# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-# See https://llvm.org/LICENSE.txt for license information.
-# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-"""Base class for all DExTer commands, where a command is a specific Python
-function that can be embedded into a comment in the source code under test
-which will then be executed by DExTer during debugging.
-"""
-
-import abc
-from typing import List
-
-class CommandBase(object, metaclass=abc.ABCMeta):
- def __init__(self):
- self.path = None
- self.lineno = None
- self.raw_text = ''
-
- def get_label_args(self):
- return list()
-
- def has_labels(self):
- return False
-
- @abc.abstractstaticmethod
- def get_name():
- """This abstract method is usually implemented in subclasses as:
- return __class__.__name__
- """
-
- def get_watches(self) -> List[str]:
- return []
-
- @abc.abstractmethod
- def eval(self):
- """Evaluate the command.
-
- This will be called when constructing a Heuristic object to determine
- the debug score.
-
- Returns:
- The logic for handling the result of CommandBase.eval() must be
- defined in Heuristic.__init__() so a consitent return type between
- commands is not enforced.
- """
-
- @staticmethod
- def get_subcommands() -> dict:
- """Returns a dictionary of subcommands in the form {name: command} or
- None if no subcommands are required.
- """
- return None
OpenPOWER on IntegriCloud