Mercurial Hosting > luan
comparison core/src/luan/modules/PickleCon.java @ 572:f1601a4ce1aa
fix stack when calling meta-methods
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Sun, 12 Jul 2015 21:34:23 -0600 |
parents | d9df6d6cb927 |
children | 6cc2f047019b |
comparison
equal
deleted
inserted
replaced
571:cd944b010f25 | 572:f1601a4ce1aa |
---|---|
94 if( !set.add(tbl) ) { | 94 if( !set.add(tbl) ) { |
95 throw luan.exception( "circular reference in table" ); | 95 throw luan.exception( "circular reference in table" ); |
96 } | 96 } |
97 StringBuilder sb = new StringBuilder(); | 97 StringBuilder sb = new StringBuilder(); |
98 sb.append( "{" ); | 98 sb.append( "{" ); |
99 for( Map.Entry<Object,Object> entry : tbl.iterable(luan) ) { | 99 for( Map.Entry<Object,Object> entry : tbl.iterable(luan.JAVA) ) { |
100 sb.append( "[" ); | 100 sb.append( "[" ); |
101 sb.append( pickle(entry.getKey(),set) ); | 101 sb.append( pickle(entry.getKey(),set) ); |
102 sb.append( "]=" ); | 102 sb.append( "]=" ); |
103 sb.append( pickle(entry.getValue(),set) ); | 103 sb.append( pickle(entry.getValue(),set) ); |
104 sb.append( ", " ); | 104 sb.append( ", " ); |
114 for( byte[] a : binaries ) { | 114 for( byte[] a : binaries ) { |
115 sb.append( "_binaries[#_binaries+1] = _read_binary(" + a.length + ")\n" ); | 115 sb.append( "_binaries[#_binaries+1] = _read_binary(" + a.length + ")\n" ); |
116 } | 116 } |
117 } | 117 } |
118 for( Object obj : args ) { | 118 for( Object obj : args ) { |
119 sb.append( luan.toString(obj) ); | 119 sb.append( luan.JAVA.toString(obj) ); |
120 } | 120 } |
121 writeString( sb.toString() ); | 121 writeString( sb.toString() ); |
122 //System.out.println("aaaaaaaaaaaaaaaaaaaaaaaa"); | 122 //System.out.println("aaaaaaaaaaaaaaaaaaaaaaaa"); |
123 //System.out.println(sb); | 123 //System.out.println(sb); |
124 //System.out.println("zzzzzzzzzzzzzzzzzzzzzzzz"); | 124 //System.out.println("zzzzzzzzzzzzzzzzzzzzzzzz"); |