VS Code Extension · 10 Languages · Sub-200ms

Know exactly which
version of a method
actually runs.

Program Resolution & Inheritance Structure Map

PRISM shows live method resolution order and inheritance chain visualization as you move your cursor. Four color-coded states. One glance.

Click highlighted lines in the editor, or interact with the PRISM panel to navigate
1from lightning import LightningTrainer
2 
3class DeepSpeedEstimator(LightningTrainer):click
4 """Distributed training."""
5 def setup_dataloader(self):●
6 return "deepspeed v2"
PRISM
You override DLEstimatorBase.setup_dataloader. Your version runs.
Method Resolution Order
DeepSpeedEstimator
deepspeed.py:3
lightning.py:3
base.py:1
The Six States

Every method. One status.

Owns

Defined here. No base defines it. No descendant redefines it.

DLEstimatorBase.train
Overrides

Defined here and wins. A base class also defines it.

LightningTrainer.configure_optimizers
Overridden

Wins in its own MRO, but a descendant redefines it further.

DLEstimatorBase.setup_dataloader
Cooperative

Overridden, but every override calls super(). The body still runs in the chain.

Callback.setup
Abstract

A contract placeholder — @abstractmethod, NotImplementedError, or ellipsis. Subclasses supply the real logic.

DLEstimatorBase.forward
Shadowed

Defined here but a class earlier in the MRO wins. Dead code.

DLEstimatorBase.configure_optimizers
Language Support

10 languages. One tool.

PythonTypeScriptJavaScriptJavaKotlinC++GoC#RubyScala

Stop guessing which
method runs.

Install PRISM and see your inheritance chain in real time. Free forever. Ten languages included.

hello@prism-tools.dev