test for compilation of stdlib
This commit is contained in:
@@ -1,9 +1,24 @@
|
|||||||
package org.jetbrains.jet.codegen;
|
package org.jetbrains.jet.codegen;
|
||||||
|
|
||||||
|
import org.jetbrains.jet.lang.psi.JetNamespace;
|
||||||
|
|
||||||
|
import java.lang.reflect.Method;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author alex.tkachman
|
* @author alex.tkachman
|
||||||
*/
|
*/
|
||||||
public class StdlibTest extends CodegenTestCase {
|
public class StdlibTest extends CodegenTestCase {
|
||||||
|
public void testLib () throws ClassNotFoundException {
|
||||||
|
createEnvironmentWithFullJdk();
|
||||||
|
loadFile("../../../stdlib/ktSrc/StandardLibrary.kt");
|
||||||
|
ClassFileFactory codegens = generateClassesInFile();
|
||||||
|
GeneratedClassLoader loader = new GeneratedClassLoader(codegens);
|
||||||
|
|
||||||
|
final JetNamespace namespace = myFile.getRootNamespace();
|
||||||
|
String fqName = NamespaceCodegen.getJVMClassName(CodegenUtil.getFQName(namespace)).replace("/", ".");
|
||||||
|
Class<?> namespaceClass = loader.loadClass(fqName);
|
||||||
|
}
|
||||||
|
|
||||||
public void testInputStreamIterator () {
|
public void testInputStreamIterator () {
|
||||||
blackBoxFile("inputStreamIterator.jet");
|
blackBoxFile("inputStreamIterator.jet");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ namespace std
|
|||||||
|
|
||||||
namespace io {
|
namespace io {
|
||||||
import java.io.*
|
import java.io.*
|
||||||
|
import java.nio.charset.*
|
||||||
|
|
||||||
inline fun print(message : Any?) { System.out?.print(message) }
|
inline fun print(message : Any?) { System.out?.print(message) }
|
||||||
inline fun print(message : Int) { System.out?.print(message) }
|
inline fun print(message : Int) { System.out?.print(message) }
|
||||||
@@ -32,23 +33,25 @@ namespace io {
|
|||||||
inline fun ByteArray.inputStream(offset: Int, length: Int) : ByteArrayInputStream = ByteArrayInputStream(this, offset, length)
|
inline fun ByteArray.inputStream(offset: Int, length: Int) : ByteArrayInputStream = ByteArrayInputStream(this, offset, length)
|
||||||
|
|
||||||
val InputStream.buffered : BufferedInputStream
|
val InputStream.buffered : BufferedInputStream
|
||||||
get() = if(this instanceof BufferedInputStream) this else BufferedInputStream(this)
|
get() = if(this is BufferedInputStream) this else BufferedInputStream(this)
|
||||||
|
|
||||||
inline fun InputStream.buffered(bufferSize: Int) = BufferedInputStream(this, bufferSize)
|
// inline fun InputStream.buffered(bufferSize: Int) = BufferedInputStream(this, bufferSize)
|
||||||
|
|
||||||
val InputStream.reader : InputStreamReader
|
val InputStream.reader : InputStreamReader
|
||||||
get() = InputStreamReader(this)
|
get() = InputStreamReader(this)
|
||||||
|
|
||||||
val InputStream.bufferedReader : BufferedReader
|
// val InputStream.bufferedReader : BufferedReader
|
||||||
get() = buffered.reader
|
// get() = buffered.reader
|
||||||
|
|
||||||
inline fun val InputStream.reader(charset: Charset) : InputStreamReader = InputStreamReader(this, charset)
|
/*
|
||||||
|
inline fun InputStream.reader(charset: Charset) : InputStreamReader = InputStreamReader(this, charset)
|
||||||
|
|
||||||
inline fun val InputStream.reader(charsetName: String) = InputStreamReader(this, charsetNme)
|
inline fun InputStream.reader(charsetName: String) = InputStreamReader(this, charsetNme)
|
||||||
|
|
||||||
inline fun val InputStream.reader(charset: Charset) = InputStreamReader(this, charset)
|
inline fun InputStream.reader(charset: Charset) = InputStreamReader(this, charset)
|
||||||
|
|
||||||
inline fun val InputStream.reader(charsetDecoder: CharsetDecoder) = InputStreamReader(this, charsetDecoder)
|
inline fun InputStream.reader(charsetDecoder: CharsetDecoder) = InputStreamReader(this, charsetDecoder)
|
||||||
|
*/
|
||||||
|
|
||||||
fun InputStream.iterator() : ByteIterator = object: ByteIterator() {
|
fun InputStream.iterator() : ByteIterator = object: ByteIterator() {
|
||||||
override val hasNext : Boolean
|
override val hasNext : Boolean
|
||||||
@@ -57,10 +60,10 @@ namespace io {
|
|||||||
override fun nextByte() = read().byt
|
override fun nextByte() = read().byt
|
||||||
}
|
}
|
||||||
|
|
||||||
val Reader.buffered : BufferedReader
|
// val Reader.buffered : BufferedReader
|
||||||
get() = if(this instanceof BufferedReader) this else BufferedReader(this)
|
// get() = if(this instanceof BufferedReader) this else BufferedReader(this)
|
||||||
|
|
||||||
inline fun Reader.buffered(bufferSize: Int) = BufferedReader(this, bufferSize)
|
// inline fun Reader.buffered(bufferSize: Int) = BufferedReader(this, bufferSize)
|
||||||
|
|
||||||
private val stdin : BufferedReader = BufferedReader(InputStreamReader(object : InputStream() {
|
private val stdin : BufferedReader = BufferedReader(InputStreamReader(object : InputStream() {
|
||||||
override fun read() : Int {
|
override fun read() : Int {
|
||||||
|
|||||||
Reference in New Issue
Block a user