A method and system for efficiently resolving the multi-method dispatching problem provided. The dispatching problem is reduced to geometric problems on multi-dimensional grids and new data structures are provided for the resulting geometric problems. In particular, methods having the same name are mapped to a set of rectangles based on a pair of numbers associated with each argument. The pair of numbers is an interval identifying the position of the argument in a class hierarchy tree. The interval is found by computing an Euler Tour of the class hierarchy tree. For a given method invocation in an object-oriented program, the method invocation is mapped to a point based on one of the numbers in the interval associated with each argument in the invocation. The problem of finding the most specific method for the method invocation is thus transformed into the so-called point enclosure problem in geometry, in which the smallest rectangle is found which encloses a given point. To help find efficient solutions to the point enclosure problem, the set of rectangles is broken into a number of subsets having certain geometric properties and stored in efficient data structures. Queries are performed on the various data structures to find the smallest or minimal rectangle, if any, in the various subsets. The result is either the identification of the minimal rectangle overall, or of an ambiguity requiring resolution by the programmer.

Une méthode et un système pour résoudre efficacement la multi-méthode expédiant le problème fourni. Le problème d'expédition est réduit aux problèmes géométriques sur des grilles multidimensionnelles et de nouvelles structures de données sont données pour les problèmes géométriques résultants. En particulier, des méthodes ayant le même nom sont tracées à un ensemble de rectangles basés sur une paire de nombres liés à chaque argument. La paire de nombres est un intervalle identifiant la position de l'argument dans un arbre de hiérarchie de classe. L'intervalle est trouvé en calculant une excursion d'Euler de l'arbre de hiérarchie de classe. Pour une invocation donnée de méthode dans un programme orienté objectivement, l'invocation de méthode est tracée à un point basé sur un des nombres dans l'intervalle lié à chaque argument dans l'invocation. Le problème de trouver la méthode la plus spécifique pour l'invocation de méthode est ainsi transformé en prétendu problème de clôture de point dans la géométrie, dans laquelle on trouve le plus petit rectangle qui enferme un point donné. Pour aider à trouver les solutions efficaces au problème de clôture de point, l'ensemble de rectangles est cassé dans un certain nombre de sous-ensembles ayant certaines propriétés géométriques et entreposés en structures de données efficaces. Des questions sont exécutées sur les diverses structures de données pour trouver le plus petit ou minimal rectangle, le cas échéant, dans les divers sous-ensembles. Le résultat est l'identification du rectangle minimal en général, ou d'une ambiguïté exigeant la résolution par le programmeur.

 
Web www.patentalert.com

< (none)

< Medical syringe

> Automatic updating of test management system with test results entered into an electronic logbook

> (none)

~ 00040