Opened 18 years ago

Last modified 18 years ago

#6 closed defect

Create nomIsObj() — at Version 1

Reported by: cinc Owned by: somebody
Priority: major Milestone:
Component: component1 Version:
Keywords: nomIsObj Cc:

Description (last modified by cinc)

nomIsObj() is currently implemented as a macro just checking if pointer!=NULL. This has to be implemented in a correct way by checking if the object contains a valid pointer to a method table (mtab*). There must be some sophisticated data structure to enable checking the mtab* against the known list of mtabs. A binary tree containing the mtab-pointers won't work (without using some more advanced technique like selfbalancing trees) because the classes are loaded sequentially so each mtab[n] will be in a memory location > mtab[n-1] so the tree will be degenerated. Sequentially searching will presumably be slow, because one has to think about several hundred possible mtabs.

Change History (1)

comment:1 by cinc, 18 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.