Revision 47299 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/DefaultCodeBuilder.java

View differences:

DefaultCodeBuilder.java
108 108
        
109 109
        @Override
110 110
        public void link(SymbolTable symbolTable) {
111
            this.link(symbolTable, true);
112
        }
113

  
114
        @Override
115
        public void link(SymbolTable symbolTable, boolean force) {
111 116
            if( this.code() == Code.CALLABLE ) {
112 117
                Callable caller = (Callable) this;
113
                Function fn = symbolTable.function(caller.name());
114
                if( fn != null ) {
115
                    caller.function(fn);
118
                if( force || caller.function()==null ) {
119
                    Function fn = symbolTable.function(caller.name());
120
                    if( fn != null ) {
121
                        caller.function(fn);
122
                    }
116 123
                }
117 124
                if( caller.parameters() != null ) {
118 125
                    for( Code arg : caller.parameters() ) {
119 126
                        if( arg!=null ) {
120
                          arg.link(symbolTable);
127
                          arg.link(symbolTable, force);
121 128
                        }
122 129
                    }
123 130
                }
......
425 432

  
426 433
        @Override
427 434
        public void link(SymbolTable symbolTable) {
435
            this.link(symbolTable, true);
436
        }
437
        
438
        @Override
439
        public void link(SymbolTable symbolTable, boolean force) {
428 440
            for (Code arg : this.codes) {
429
                arg.link(symbolTable);
441
                arg.link(symbolTable, force);
430 442
            }
431 443
        }
432 444

  

Also available in: Unified diff