cabal: bump data-default dependency to 0.5.0.
[hs-java.git] / Java / Lang.hs
1 {-# LANGUAGE OverloadedStrings #-}
2 -- | This module exports some definitions from standard Java java.lang package.
3 module Java.Lang where
4
5 import Data.String
6
7 import JVM.Common ()  -- import instances only
8 import JVM.ClassFile
9
10 objectClass ::  FieldType
11 objectClass = ObjectType object
12
13 stringClass ::  FieldType
14 stringClass = ObjectType string
15
16 integerClass ::  FieldType
17 integerClass = ObjectType integer
18
19 systemClass ::  FieldType
20 systemClass = ObjectType system
21
22 object :: IsString s => s
23 object = "java/lang/Object"
24
25 string :: IsString s => s
26 string = "java/lang/String"
27
28 integer :: IsString s => s
29 integer = "java/lang/Integer"
30
31 system :: IsString s => s
32 system = "java/lang/System"
33
34 -- | java.lang.Object.<init>() method
35 objectInit :: NameType (Method Direct)
36 objectInit = NameType "<init>" $ MethodSignature [] ReturnsVoid
37
38 -- | java.lang.Integer.valueOf() method
39 valueOfInteger :: NameType (Method Direct)
40 valueOfInteger = NameType "valueOf" $ MethodSignature [IntType] (Returns Java.Lang.integerClass)
41