xref: /llvm-project/cross-project-tests/debuginfo-tests/dexter/dex/command/StepValueInfo.py (revision f98ee40f4b5d7474fc67e82824bf6abbaedb7b1c)
11364750dSJames Henderson# DExTer : Debugging Experience Tester
21364750dSJames Henderson# ~~~~~~   ~         ~~         ~   ~~
31364750dSJames Henderson#
41364750dSJames Henderson# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
51364750dSJames Henderson# See https://llvm.org/LICENSE.txt for license information.
61364750dSJames Henderson# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
71364750dSJames Henderson
81364750dSJames Henderson
91364750dSJames Hendersonclass StepValueInfo(object):
101364750dSJames Henderson    def __init__(self, step_index, watch_info, expected_value):
111364750dSJames Henderson        self.step_index = step_index
121364750dSJames Henderson        self.watch_info = watch_info
131364750dSJames Henderson        self.expected_value = expected_value
141364750dSJames Henderson
151364750dSJames Henderson    def __str__(self):
16*f98ee40fSTobias Hieta        return "{}:{}: expected value:{}".format(
17*f98ee40fSTobias Hieta            self.step_index, self.watch_info, self.expected_value
18*f98ee40fSTobias Hieta        )
191364750dSJames Henderson
201364750dSJames Henderson    def __eq__(self, other):
21*f98ee40fSTobias Hieta        return (
22*f98ee40fSTobias Hieta            self.watch_info.expression == other.watch_info.expression
23*f98ee40fSTobias Hieta            and self.expected_value == other.expected_value
24*f98ee40fSTobias Hieta        )
251364750dSJames Henderson
261364750dSJames Henderson    def __hash__(self):
271364750dSJames Henderson        return hash(self.watch_info.expression, self.expected_value)
28