summaryrefslogtreecommitdiff
path: root/doc/2_02_list_map_struct_alias.adoc
diff options
context:
space:
mode:
Diffstat (limited to 'doc/2_02_list_map_struct_alias.adoc')
-rw-r--r--doc/2_02_list_map_struct_alias.adoc56
1 files changed, 1 insertions, 55 deletions
diff --git a/doc/2_02_list_map_struct_alias.adoc b/doc/2_02_list_map_struct_alias.adoc
index f10c1ec8..adaccc7f 100644
--- a/doc/2_02_list_map_struct_alias.adoc
+++ b/doc/2_02_list_map_struct_alias.adoc
@@ -9,60 +9,7 @@ An example is probably much clearer then 1000 loc.
[source,chapel]
.poker.md
----
-alias Value_t map<int,str>
-values:Value_t = new Value_t()
-
-values->insert(0, "Ace")
-values->insert(1, "1")
-values->insert(2, "2")
-values->insert(3, "3")
-values->insert(4, "4")
-values->insert(5, "5")
-values->insert(6, "6")
-values->insert(7, "7")
-values->insert(8, "8")
-values->insert(9, "9")
-values->insert(10, "Ten")
-values->insert(11, "Jack")
-values->insert(12, "Queen")
-values->insert(13, "King")
-
-alias Suit_t map<int,str>
-suit:Suit_t = new Suit_t()
-suit->insert(1, "hearts")
-suit->insert(2, "spades")
-suit->insert(3, "diamonds")
-suit->insert(4, "clubs")
-
-struct Card_t
- s:int
- v:int
-end
-
-alias Hand_t list<Card_t>
-
-struct Person_t
- name:str
- age:int
- hand:Hand_t
-end
-
-john:Person_t
-
-john = new Person_t()
-john->name = "john"
-john->age = 18
-john->hand = new Hand_t()
-
-card:Card_t = new Card_t()
-card->s = 2
-card->v = 13
-john->hand->push(card)
-
-print("ok ", john->name, " ", john->age, "\n")
-for card:Card_t in john->hand {
- print("\n\t", suit->find(card->s), " ", values->find(card->v), "\n")
-}
+include::code/poker.lm[]
----
When we run this we get:
@@ -73,5 +20,4 @@ ok john 18
spades King
----
-
NOTE: this also illustrates how to iterate through a 'list' and access elements in a 'map'.