On Mon, Feb 10, 2003 at 11:50:06PM +0100, Mirar @ Pike developers forum scribbled:
I gave it object with m_delete() - and the error says that it's a bad argument to m_delete while it states that it expected an object passed to _m_delete
No, not passed. It doesn't say anything about how it expects _m_delete to behave, only about what m_delete expects:
The first argument to m_delete is either a mapping or an object, but the object must be of a class that has an _m_delete method,
The documentation doesn't say it must contain the method.
"object with _m_delete".
How would you phrase it so it's more clear?
It is clear to you. And already several people stated that they see the ambiguity - people with much less experience than you. If you think that whatever is clearly understood to a person that knows some subject in and out must be as clear to any newcomer or even a person with a little less experience, then you're wrong. The art of writing good documentation and giving good error messages is when both of those items are understood to those who need the documentation for learning - for less experienced or new users of the language. And any documentation of an API must not contain any ambiguities. Like the phrase in the m_delete() docs which contains IF instead of MUST - that's an ambiguity and it should not happen in this instance.
marek