View Issue Details

IDProjectCategoryView StatusLast Update
0000187LDMudEfunspublic2009-09-27 13:46
ReporterlarsAssigned To 
PrioritynormalSeverityfeatureReproducibilityN/A
Status newResolutionopen 
Summary0000187: New efun: raise_caller_error()
DescriptionShort: 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()
TagsNo tags attached.
External Data (URL)

Relationships

related to 0000697 closedzesstra use 'culprit' in runtime_error() for simul-efun callers 

Activities

zesstra

2009-09-26 20:11

administrator   ~0001310

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.

fufu

2009-09-27 13:46

manager   ~0001312

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

Issue History

Date Modified Username Field Change
2004-11-26 22:26 lars New Issue
2009-09-26 20:11 zesstra Note Added: 0001310
2009-09-27 13:46 fufu Note Added: 0001312
2009-11-01 11:10 fufu Relationship added related to 0000697