IMPORTANT: The methods on this class are synchronized. This is required because there may be multiple clients in separate threads concurrently reading an AST and asking for bindings for its nodes. These requests all end up invoking instance methods on this class. There are various internal tables and caches which are built and maintained in the course of looking up bindings. To ensure that they remain coherent in the presence of multiple threads, the methods are synchronized on the DefaultBindingResolver instance.
|
|