close
Warning:
Can't synchronize with repository "(default)" (/var/svn/tolp does not appear to be a Subversion repository.). Look in the Trac log for more information.
- Timestamp:
-
Jan 16, 2012, 12:24:05 PM (14 years ago)
- Author:
-
Víctor de Buen Remiro
- Comment:
-
La función especial EvGlobalFind, que es la que evalúa las expresiones del tipo ::GlobalName está programada para devolver error en caso de usarse con el tipo Anything pues en puridad no tiene porqué haber un sólo objeto con ese nombre en el ámbito global con lo que no está resuelto de forma unívoca.
Lo cierto es que a ObjectExist no le importa si hay varios, lo importante es si hay alguno o no.
Por el momento he hecho un apaño para que el :: devuelva uno cualquiera pero debería salir un warning o algo para avisar de que hay más de uno.
En cualquier caso no se debería usar Anything cuando se sabe el tipo exacto porque en el mejor de los casos irá más lento.
Legend:
- Unmodified
- Added
- Removed
- Modified
-
|
initial
|
v1
|
|
| 1 | 1 | Se encuentra una incoherencia al usar la función {{{ObjectExist}}} junto con el operador {{{::}}} y la gramática {{{Anything}}}; |
| 2 | 2 | {{{ |
| | 3 | Real ObjectExist("Anything", "::Tolerance"); // => 0 |
| 3 | 4 | Real ObjectExist("Anything", "Tolerance"); // => 1 |
| 4 | 5 | Real ObjectExist("Real", "Tolerance"); // => 1 |
| 5 | | Real ObjectExist("Anything", "::Tolerance"); // => 0 |
| 6 | 6 | Real ObjectExist("Real", "::Tolerance"); // => 1 |
| 7 | 7 | }}} |