aboutsummaryrefslogtreecommitdiff
path: root/vb/printer.vb
diff options
context:
space:
mode:
authorJoel Martin <github@martintribe.org>2014-11-15 23:15:09 -0600
committerJoel Martin <github@martintribe.org>2015-01-09 16:16:47 -0600
commitee7cd5859e56423983f025088c8cef36b7ed09dd (patch)
treeda9f2011f4feaa34c96a63407fa4e8720eb1d4dc /vb/printer.vb
parentc3b508af92800f63bf99f41af68f026535f454f5 (diff)
downloadmal-ee7cd5859e56423983f025088c8cef36b7ed09dd.tar.gz
mal-ee7cd5859e56423983f025088c8cef36b7ed09dd.zip
VB.Net: port of C# version.
Diffstat (limited to 'vb/printer.vb')
-rw-r--r--vb/printer.vb50
1 files changed, 50 insertions, 0 deletions
diff --git a/vb/printer.vb b/vb/printer.vb
new file mode 100644
index 0000000..212b89c
--- /dev/null
+++ b/vb/printer.vb
@@ -0,0 +1,50 @@
+Imports System
+Imports System.Collections.Generic
+Imports System.Text.RegularExpressions
+Imports Mal
+Imports MalVal = Mal.types.MalVal
+Imports MalList = Mal.types.MalList
+
+Namespace Mal
+ Public Class printer
+ Shared Function join(value As List(Of MalVal),
+ delim As String,
+ print_readably As Boolean) As String
+ Dim strs As New List(Of String)
+ For Each mv As MalVal In value
+ strs.Add(mv.ToString(print_readably))
+ Next
+ return String.Join(delim, strs.ToArray())
+ End Function
+
+ Shared Function join(value As Dictionary(Of String, MalVal),
+ delim As String,
+ print_readably As Boolean) As String
+ Dim strs As New List(Of String)
+ For Each entry As KeyValuePair(Of String, MalVal) In value
+ If print_readably Then
+ strs.Add("""" & entry.Key.ToString() & """")
+ Else
+ strs.Add(entry.Key.ToString())
+ End If
+ strs.Add(entry.Value.ToString(print_readably))
+ Next
+ return String.Join(delim, strs.ToArray())
+ End Function
+
+ Shared Function _pr_str(mv As MalVal,
+ print_readably As Boolean) As String
+ return mv.ToString(print_readably)
+ End Function
+
+ Shared Function _pr_str_args(args As MalList,
+ sep As String,
+ print_readably As Boolean) As String
+ return join(args.getValue(), sep, print_readably)
+ End Function
+
+ Shared Function escapeString(str As String) As String
+ return Regex.Escape(str)
+ End Function
+ End Class
+End Namespace