2018-09-07 19:46:53 +02:00
|
|
|
package fluence.hackethberlin
|
|
|
|
|
|
|
|
import shapeless._
|
|
|
|
import types._
|
2018-09-08 11:42:13 +02:00
|
|
|
import Decorator._
|
2018-09-07 19:46:53 +02:00
|
|
|
|
|
|
|
object MakeVyperApp extends App {
|
|
|
|
|
|
|
|
val struct = new StructType(
|
|
|
|
("address" → address) ::
|
2018-09-08 00:23:25 +03:00
|
|
|
("owner" → address) ::
|
|
|
|
("size" -> uint256) ::
|
|
|
|
("time" -> int128) :: HNil
|
2018-09-07 19:46:53 +02:00
|
|
|
)
|
|
|
|
|
2018-09-08 00:12:56 +02:00
|
|
|
val data = new DataDef(
|
|
|
|
("address" → address) ::
|
|
|
|
("owner" → `public`(address)) ::
|
|
|
|
("holders" → (address ~>> bool)) ::
|
2018-09-08 11:21:54 +02:00
|
|
|
("structMap" → `public`(uint256 ~>> struct)) ::
|
2018-09-08 03:34:40 +03:00
|
|
|
("struct" → `public`(struct)) ::
|
|
|
|
("struct2" → struct) :: HNil
|
2018-09-08 00:12:56 +02:00
|
|
|
)
|
|
|
|
|
2018-09-08 11:42:13 +02:00
|
|
|
val func = new FuncDef(
|
|
|
|
"myFunc",
|
|
|
|
("address" → address) :: HNil
|
|
|
|
)
|
|
|
|
|
2018-09-07 19:46:53 +02:00
|
|
|
println(data.toVyper)
|
|
|
|
|
2018-09-08 11:42:13 +02:00
|
|
|
println(func.toVyper)
|
|
|
|
|
|
|
|
println((`@public` @: func).toVyper)
|
|
|
|
|
2018-09-07 19:46:53 +02:00
|
|
|
}
|