Guest User

Untitled

a guest
Oct 18th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.73 KB | None | 0 0
  1.  
  2. List: class <X> {
  3. data: X*
  4. size: SizeT
  5.  
  6. init: func (=size) {
  7. data = gc_malloc(X size * size)
  8. }
  9.  
  10. get: func (index: Int) -> X {
  11. data[index]
  12. }
  13.  
  14. set: func (index: Int, element: X) {
  15. data[index] = element
  16. }
  17. }
  18.  
  19. Letter: cover from Char { }
  20.  
  21. #specialize List<Letter>
  22.  
  23. test1: func {
  24. l := List<Char> new(3)
  25. l set(0, 'f')
  26. l set(1, 'a')
  27. l set(2, 'q')
  28.  
  29. for (i in 0..l size) {
  30. printf("%c", l get(i))
  31. }
  32. println()
  33. }
  34.  
  35. test2: func {
  36. l := List<Letter> new(3)
  37. l set(0, 'f' as Letter)
  38. l set(1, 'a' as Letter)
  39. l set(2, 'q' as Letter)
  40.  
  41. for (i in 0..l size) {
  42. printf("%c", l get(i))
  43. }
  44. println()
  45. }
  46.  
  47. main: func {
  48. test1()
  49. test2()
  50. }
Add Comment
Please, Sign In to add comment