View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000187 | LDMud | Efuns | public | 2004-11-26 21:26 | 2009-09-27 11:46 |
Reporter | Assigned To | ||||
Priority | normal | Severity | feature | Reproducibility | N/A |
Status | new | Resolution | open | ||
Summary | 0000187: New efun: raise_caller_error() | ||||
Description | Short: New efun raise_caller_error() From: Lars, Daniel von Dincklage <vondincklage@usa.net> Date: Mon, 22 Jun 1998 00:53:36 +0200 Type: Feature State: Unclassified See also: p-990204-1, f-000716 void raise_caller_error(string msg, object caller = previous_object()) Works like raise_error, except that the error is attributed to <caller>, not this_object(). <caller> must be in the current call stack! Maybe make this an extension of raise_error() itself. Note: can be done in an sefun using caller_stack() and set_this_object()? Note: could also be called raise_error() | ||||
Tags | No tags attached. | ||||
External Data (URL) | |||||
|
For this purpose, we actually use this approach with set_this_object() sometimes. The disadvantage is, that only privileged objects can do that. ok, one could make a sefun using that mechanism. |
|
We (Wunderland) have code in the master object's runtime_error() function using debug_info(DINFO_TRACE, DIT_UNCAUGHT_ERROR) to attribute errors to calling objects. The reference is encoded in the error message itself: http://wl.mud.de/mud/doc/efun/raise_error.html |