MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
DISPLAY ht.GetLength()
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
DISPLAY ht.GetKeys()
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
DISPLAY ht
CALL ht.Delete(1)
DISPLAY ht
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
LET ht["k3"] = "val3"
DISPLAY ht
CALL ht.Delete(1,2)
DISPLAY ht
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
LET ht["k3"] = "val3"
DISPLAY ht
CALL ht.remove("k2")
DISPLAY ht
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
LET ht["k3"] = "val3"
DISPLAY ht
CALL ht2.Insert("k_ins","val_ins")
DISPLAY ht
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["key1"] = "value1"
DISPLAY ht
DISPLAY ht.modify("key1","new_val")
DISPLAY ht
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
LET ht["k3"] = "val3"
DISPLAY ht
CALL ht.Clear()
DISPLAY ht
END MAIN
MAIN
DEFINE ht1,ht2 HASHMAP
LET ht1["k2"] = "val1"
LET ht1["k1"] = "val2"
LET ht2["k3"] = "val3"
LET ht2["k4"] = "val4"
CALL ht1.Join(ht2)
DISPLAY ht1
END MAIN
MAIN
DEFINE ht1,ht2 HASHMAP
LET ht1["k2"] = "val1"
LET ht1["k1"] = "val2"
DISPLAY ht1.Find("k2")
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
DISPLAY ht.GetKey(1)
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
DISPLAY ht.GetValue(1)
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
CALL ht.KeySort(0)
DISPLAY ht
CALL ht.KeySort(1)
DISPLAY ht
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
CALL ht.ValueSort(1)
DISPLAY ht
CALL ht.ValueSort(0)
DISPLAY ht
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["key_1"] = "val1"
LET ht["key_3"] = "val3"
LET ht["key_2"] = "val2"
DISPLAY "Sorting Asc by value using function CompareDesc:"
CALL ht.CustomSort("CompareDesc")
DISPLAY ht
DISPLAY "\nSorting Asc by value using function CompareAsc:"
CALL ht.CustomSort("CompareAsc")
DISPLAY ht
END MAIN
FUNCTION CompareAsc(a, b)
DEFINE a, b RECORD key REFERENCE, val STRING END RECORD
RETURN a.val < b.val
END FUNCTION
FUNCTION CompareDesc(a, b)
DEFINE a, b RECORD key REFERENCE, val STRING END RECORD
RETURN a.val >= b.val
END FUNCTION
MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
CALL ht.ValueSort(1)
DISPLAY ht
CALL ht.resetSorting()
DISPLAY ht
END MAIN
MAIN
DEFINE ht1,ht2,ht3 HASHMAP
LET ht1["k2"] = "val1"
LET ht1["k1"] = "val2"
LET ht2["k3"] = "val3"
LET ht2["k4"] = "val4"
CALL ht1.CopyTo(ht2)
DISPLAY ht2
CALL ht1.CopyTo(ht3)
DISPLAY ht3
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
CALL ht.ValueSort(1)
IF ht.keyExists("k2") THEN
DISPLAY "k2 KEY EXISTS"
ELSE
DISPLAY "k2 KEY DOES NOT EXIST"
END IF
END MAIN
MAIN
DEFINE ht HASHMAP
LET ht["k2"] = "val1"
LET ht["k1"] = "val2"
CALL ht.ValueExists("val2")
IF ht.keyExists("k2") THEN
DISPLAY "val2 VALUE EXISTS"
ELSE
DISPLAY "val2 VALUE DOES NOT EXIST"
END IF
END MAIN