View Issue Details

IDProjectCategoryView StatusLast Update
0000745LDMud 3.5Efunspublic2010-11-22 22:46
ReporterSorcerer Assigned To 
PrioritynormalSeverityfeatureReproducibilityN/A
Status closedResolutionwon't fix 
Summary0000745: private lfuns and function_exists
DescriptionIf called from the defining object function_exists might be able to find lfuns that are declared private.

If it's just a few lines of code it would be a nice-to-have but it's not all that important.
TagsNo tags attached.

Activities

zesstra

2010-11-19 22:47

administrator   ~0001925

As far as I remember, that is actually not possible, because private functions are not stored in the function table. Am I wrong?

Gnomi

2010-11-20 00:03

manager   ~0001926

They are not stored in the function names lookup table (which is used by function_exists()). However they are stored in the function table (which is read by functionlist()), so a mudlib could take that list and search the function name in there (the driver would have to do the same thing for private functions). I'd rather not implement that in function_exists().

zesstra

2010-11-22 22:46

administrator   ~0001933

Thank you. :-)
I agree with Gnomi. Iterating over the function table as fallback if we don't find something in the function lookup table seems not too good. The only way out would be a new argument for searching private functions. But since this is not too often done and the the procedure for the mudlib the same as for the driver, we can leave this to the mud (simul_efun or whatever).

Issue History

Date Modified Username Field Change
2010-04-20 13:39 Sorcerer New Issue
2010-11-19 22:47 zesstra Note Added: 0001925
2010-11-19 22:47 zesstra Status new => feedback
2010-11-20 00:03 Gnomi Note Added: 0001926
2010-11-22 22:46 zesstra Note Added: 0001933
2010-11-22 22:46 zesstra Status feedback => closed
2010-11-22 22:46 zesstra Resolution open => won't fix