Changeset fa673db in tol for tolbase/lib/byswidget/bfunctions
- Timestamp:
- Sep 22, 2009, 11:51:51 AM (17 years ago)
- Branches:
- 1941-docker-image-to-test, devel, master
- Children:
- 55e561e
- Parents:
- 83f123c
- File:
-
- 1 edited
-
tolbase/lib/byswidget/bfunctions/bftoltcl.tcl (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
tolbase/lib/byswidget/bfunctions/bftoltcl.tcl
r83f123c rfa673db 684 684 array set it_info $it 685 685 #puts "$it_info(grammar) $it_info(name) $it_info(content) " 686 set G $it_info(grammar) 687 if { $G eq "Set" || $G eq "NameBlock" } { 688 set value [ TolObj2TclObj [ eval list $obj $idx ] ] 689 } else { 690 set value $it_info(content) 691 } 692 lappend result $value 686 lappend result [ TolObj2TclObj [ eval list $obj $idx ] ] 693 687 incr idx 694 688 } … … 699 693 } 700 694 695 696 #/////////////////////////////////////////////////////////////////////////// 697 proc TolSet2TclListNamed { obj } { 698 # PURPUSE: procedimiento de ayuda a TolObj2TclObjNamed para construir el 699 # valor asociado a un conjunto TOL donde sus elementos van con 700 # nombre. 701 # 702 # RETURNS: retorna una lista con los pares nombre valor de los elementos del 703 # conjunto TOL 704 #/////////////////////////////////////////////////////////////////////////// 705 set value [ list ] 706 set idx 1 707 tol::foreach it $obj { 708 #puts "$it_info(grammar) $it_info(name) $it_info(content) " 709 set it_pair [ TolObj2TclObjNamed [ eval list $obj $idx ] ] 710 # esto quedaria mejor con un {*}, no usaria el eval pues creo que 711 # "abre" toda la lista. 712 lappend value [ lindex $it_pair 0 ] [ lindex $it_pair 1 ] 713 incr idx 714 } 715 set value 716 } 717 701 718 #/////////////////////////////////////////////////////////////////////////// 702 719 proc TolObj2TclObjNamed { obj } { 703 720 # PURPUSE: Dado una referencia a un objeto TOL retorna una representacion en 704 721 # TCL equivalente manteniendo los nombres de los objetos TOL. 705 # Si alguno de los objetos no tiene nombre se le asigna el nombre "". 706 # Esta funcion puede reemplazar a TolSet2TclLst. 707 # 708 # RETURN: Un lista Tcl de pares <nombre,valor> que representa el contenido 709 # con nombredel objeto TOL 722 # Si el objeto no tiene nombre se le asigna un nombre vacio "" 723 # 724 # RETURN: Un par nombre,valor 710 725 # 711 726 #/////////////////////////////////////////////////////////////////////////// … … 714 729 set grammar [ lindex $vinfo 0 ] 715 730 if { $grammar eq "Set" || $grammar eq "NameBlock" } { 716 set result [ list ] 717 set idx 1 718 tol::foreach it $obj { 719 array set it_info $it 720 #puts "$it_info(grammar) $it_info(name) $it_info(content) " 721 set G $it_info(grammar) 722 if { $G eq "Set" || $G eq "NameBlock" } { 723 set value [ TolObj2TclObjNamed [ eval list $obj $idx ] ] 724 } else { 725 set value $it_info(content) 726 } 727 lappend result $it_info(name) $value 728 incr idx 729 } 730 set result 731 set value [ TolSet2TclListNamed $obj ] 731 732 } else { 732 lrange $vinfo 1 2 733 } 733 set value [ lindex $vinfo 2 ] 734 } 735 list [ lindex $vinfo 1 ] $value 734 736 } 735 737 … … 768 770 proc test3.1 { } { 769 771 tol::console eval { 770 Set {[[ 1, 2, Set kk = [[ 3, 4 ]] ]]}772 Set {[[ 1, 2, Set kk = [[ 3, 4, "texto" ]] ]]} 771 773 } 772 774 set result [ TolObj2TclObj {Console 1} ] … … 777 779 proc test3.2 { } { 778 780 tol::console eval { 779 Set {[[ 1, 2, Set kk = [[ 3, 4 ]] ]]}781 Set {[[ 1, 2, Set kk = [[ 3, 4, "texto" ]] ]]} 780 782 } 781 783 set result [ TolObj2TclObjNamed {Console 1} ]
Note: See TracChangeset
for help on using the changeset viewer.
