module Java.IO where
import Data.String
import JVM.Common ()
import JVM.ClassFile
import qualified Java.Lang
printStream :: IsString s => s
printStream = "java/io/PrintStream"
printStreamClass :: FieldType
printStreamClass = ObjectType printStream
println :: NameType (Method Direct)
println = NameType "println" $ MethodSignature [Java.Lang.stringClass] ReturnsVoid
out :: NameType (Field Direct)
out = NameType "out" printStreamClass
printf :: NameType (Method Direct)
printf =
NameType "printf" $ MethodSignature [Java.Lang.stringClass,
Array Nothing Java.Lang.objectClass] (Returns printStreamClass)