From cca35aadd6edf9d2be33752b5225703ec387bba9 Mon Sep 17 00:00:00 2001
From: Matthias Diener <mdiener@illinois.edu>
Date: Sat, 29 Aug 2020 17:23:11 -0500
Subject: [PATCH] address AK's comments

---
 pytools/__init__.py | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/pytools/__init__.py b/pytools/__init__.py
index 5a90817..d449a72 100644
--- a/pytools/__init__.py
+++ b/pytools/__init__.py
@@ -1597,8 +1597,9 @@ class Table:
 
         return "\n".join(lines)
 
-    def csv(self, dialect='excel', **fmtparams):
+    def csv(self, dialect='excel', csv_kwargs=None):
         """Returns a string containing a CSV representation of the table.
+        The `dialect` and `csv_kwargs` parameters are passed to :func:`csv.writer`.
 
         .. doctest ::
 
@@ -1613,15 +1614,18 @@ class Table:
         import csv
         import io
 
+        if csv_kwargs is None:
+            csv_kwargs = {}
+
         # Default is '\r\n'
-        if 'lineterminator' not in fmtparams:
-            fmtparams['lineterminator'] = '\n'
+        if 'lineterminator' not in csv_kwargs:
+            csv_kwargs['lineterminator'] = '\n'
 
         output = io.StringIO()
-        writer = csv.writer(output, dialect, **fmtparams)
+        writer = csv.writer(output, dialect, **csv_kwargs)
         writer.writerows(self.rows)
 
-        return output.getvalue().rstrip(fmtparams['lineterminator'])
+        return output.getvalue().rstrip(csv_kwargs['lineterminator'])
 
     def latex(self, skip_lines=0, hline_after=None):
         if hline_after is None:
-- 
GitLab