Mercurial Hosting > luan
comparison core/src/luan/modules/IoLuan.java @ 421:b31d614343e8
add Io.LuanString.text_writer();
improve java related errors;
fix to_string;
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Fri, 01 May 2015 15:13:14 -0600 |
parents | 23b99a5039b5 |
children | 23a93c118042 |
comparison
equal
deleted
inserted
replaced
420:e9d4d5854e54 | 421:b31d614343e8 |
---|---|
16 import java.io.InputStreamReader; | 16 import java.io.InputStreamReader; |
17 import java.io.OutputStreamWriter; | 17 import java.io.OutputStreamWriter; |
18 import java.io.ByteArrayInputStream; | 18 import java.io.ByteArrayInputStream; |
19 import java.io.DataInputStream; | 19 import java.io.DataInputStream; |
20 import java.io.DataOutputStream; | 20 import java.io.DataOutputStream; |
21 import java.io.StringWriter; | |
21 import java.io.IOException; | 22 import java.io.IOException; |
22 import java.io.FileNotFoundException; | 23 import java.io.FileNotFoundException; |
23 import java.net.URL; | 24 import java.net.URL; |
24 import java.net.Socket; | 25 import java.net.Socket; |
25 import java.net.ServerSocket; | 26 import java.net.ServerSocket; |
299 } | 300 } |
300 return tbl; | 301 return tbl; |
301 } | 302 } |
302 } | 303 } |
303 | 304 |
304 public static final class LuanString extends LuanIn { | 305 public static final class LuanString extends LuanIO { |
305 private final String s; | 306 private String s; |
306 | 307 |
307 private LuanString(String s) { | 308 private LuanString(String s) { |
308 this.s = s; | 309 this.s = s; |
309 } | 310 } |
310 | 311 |
311 @Override InputStream inputStream() throws IOException { | 312 @Override InputStream inputStream() { |
313 throw new UnsupportedOperationException(); | |
314 } | |
315 | |
316 @Override OutputStream outputStream() { | |
312 throw new UnsupportedOperationException(); | 317 throw new UnsupportedOperationException(); |
313 } | 318 } |
314 | 319 |
315 @Override public String to_string() { | 320 @Override public String to_string() { |
316 return "<string>"; | 321 return "<string>"; |
324 return s; | 329 return s; |
325 } | 330 } |
326 | 331 |
327 @Override public boolean exists() { | 332 @Override public boolean exists() { |
328 return true; | 333 return true; |
334 } | |
335 | |
336 @Override public LuanTable text_writer() throws IOException { | |
337 LuanWriter luanWriter = new LuanWriter() { | |
338 private final Writer out = new StringWriter(); | |
339 | |
340 public void write(LuanState luan,Object... args) throws LuanException, IOException { | |
341 for( Object obj : args ) { | |
342 out.write( luan.toString(obj) ); | |
343 } | |
344 } | |
345 | |
346 public void close() throws IOException { | |
347 s = out.toString(); | |
348 } | |
349 }; | |
350 return writer(luanWriter); | |
329 } | 351 } |
330 } | 352 } |
331 | 353 |
332 public static final class LuanUrl extends LuanIn { | 354 public static final class LuanUrl extends LuanIn { |
333 private final URL url; | 355 private final URL url; |