Revision 46050 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
153 153

  
154 154
        @Override
155 155
        public Value toValue(ExpressionBuilder builder) {
156
            return builder.constant(this.value);
156
            ExpressionBuilder.Constant v = builder.constant(this.value);
157
            v.copyPropertiesFrom(builder);
158
            return v;
157 159
        }
158 160

  
159 161
        @Override
......
240 242

  
241 243
        @Override
242 244
        public Value toValue(ExpressionBuilder builder) {
243
            return builder.variable(this.name);
245
            ExpressionBuilder.Variable v = builder.variable(this.name);
246
            v.copyPropertiesFrom(builder);
247
            return v;
244 248
        }
245 249

  
246 250
        @Override
......
507 511

  
508 512
        @Override
509 513
        public Value toValue(ExpressionBuilder builder) {
514
            ExpressionBuilder.Value value;
510 515
            switch(this.type) {
511 516
                case UNARY_OPERATOR:
512
                    return builder.function(
517
                    value = builder.function(
513 518
                            OPERATOR_NEGATE.equalsIgnoreCase(this.name())?
514
                                "-" :
515
                                this.name(),
519
                                    "-" :
520
                                    this.name(),
516 521
                            this.parameters().get(0).toValue(builder)
517 522
                    );
523
                    break;
524

  
518 525
                case BINARY_OPERATOR:
519
                    return builder.binaryOperator(
526
                    value =  builder.binaryOperator(
520 527
                            this.name(),
521 528
                            this.parameters().get(0).toValue(builder),
522 529
                            this.parameters().get(1).toValue(builder)
523 530
                    );
531
                    break;
524 532
                case FUNCTION:
525 533
                default:
526 534
                    ExpressionBuilder.Function f = builder.function(this.name());
......
533 541
                            }
534 542
                        }  
535 543
                    }
536
                    return f;
544
                    value = f;
545
                    break;
537 546

  
538 547
            }
548
            value.copyPropertiesFrom(builder);
549
            return value;
539 550
        }
540 551

  
541 552
        @Override
......
720 731
                    m.parameter(parameter.toValue(builder));
721 732
                }
722 733
            }
734
            m.copyPropertiesFrom(builder);
723 735
            return m;
724 736
        }
725 737

  

Also available in: Unified diff