2 Imports System
.Collections
.Generic
3 Imports System
.Text
.RegularExpressions
5 Imports MalVal
= Mal
.types
.MalVal
6 Imports MalList
= Mal
.types
.MalList
10 Shared
Function join(value
As List(Of MalVal
),
12 print_readably
As Boolean) As String
13 Dim strs
As New List(Of
String)
14 For Each mv
As MalVal
In value
15 strs
.Add(mv
.ToString(print_readably
))
17 return String.Join(delim
, strs
.ToArray())
20 Shared
Function join(value
As Dictionary(Of
String, MalVal
),
22 print_readably
As Boolean) As String
23 Dim strs
As New List(Of
String)
24 For Each entry
As KeyValuePair(Of
String, MalVal
) In value
25 If entry
.Key
.Length
> 0 and entry
.Key(0) = ChrW(&H029e
) Then
26 strs
.Add(":" & entry
.Key
.Substring(1))
27 Else If print_readably
Then
28 strs
.Add("""" & entry
.Key
.ToString() & """")
30 strs
.Add(entry
.Key
.ToString())
32 strs
.Add(entry
.Value
.ToString(print_readably
))
34 return String.Join(delim
, strs
.ToArray())
37 Shared
Function _pr_str(mv
As MalVal
,
38 print_readably
As Boolean) As String
39 return mv
.ToString(print_readably
)
42 Shared
Function _pr_str_args(args
As MalList
,
44 print_readably
As Boolean) As String
45 return join(args
.getValue(), sep
, print_readably
)
48 Shared
Function escapeString(str
As String) As String
49 return Regex
.Escape(str
)