over/over/aux.py

21 lines
577 B
Python

#! /usr/bin/env python3
# encoding: utf-8
import sys
import traceback
from . import text
class DeprecationForwarder:
print = text.Output("over.aux.DeprecationForwarder", stream=sys.stderr)
def __init__(self, target, old_name, new_name):
self._target = target
self._old_name = old_name
self._new_name = new_name
def __getattr__(self, name):
caller = traceback.extract_stack()[-2]
self.print("%s is deprecated, please use %s instead (%s:%d)" %(self._old_name, self._new_name, caller[0], caller[1]), self.print.tl.warn)
return getattr(self._target, name)