]> git.madduck.net Git - etc/vim.git/blobdiff - tests/comments2.py

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

Store grammar pickle caches in CACHE_DIR
[etc/vim.git] / tests / comments2.py
index 6689c886e2c868a8d8985f158758a6555817e70c..32a2ab379363aae23fde56b99898c1728397f7d3 100644 (file)
@@ -1,4 +1,5 @@
 # Please keep __all__ alphabetized within each category.
+
 __all__ = [
     # Super-special typing primitives.
     'Any',
@@ -22,12 +23,40 @@ __all__ = [
     'Generator',
 ]
 
+not_shareables = [
+    # singletons
+    True,
+    False,
+    NotImplemented, ...,
+    # builtin types and objects
+    type,
+    object,
+    object(),
+    Exception(),
+    42,
+    100.0,
+    "spam",
+    # user-defined types and objects
+    Cheese,
+    Cheese("Wensleydale"),
+    SubBytes(b"spam"),
+]
+
+if 'PYTHON' in os.environ:
+    add_compiler(compiler_from_env())
+else:
+    # for compiler in compilers.values():
+         # add_compiler(compiler)
+    add_compiler(compilers[(7.0, 32)])
+    # add_compiler(compilers[(7.1, 64)])
+
+# Comment before function.
 def inline_comments_in_brackets_ruin_everything():
     if typedargslist:
         parameters.children = [
-            parameters.children[0],  # (1
+            children[0],  # (1
             body,
-            parameters.children[-1],  # )1
+            children[-1],  # )1
         ]
     else:
         parameters.children = [
@@ -42,11 +71,14 @@ def inline_comments_in_brackets_ruin_everything():
             # transport hasn't been notified yet?
             and self._proc.poll() is None):
         pass
+    # no newline before or after
     short = [
      # one
      1,
      # two
      2]
+
+    # no newline after
     call(arg1, arg2, """
 short
 """, arg3=True)
@@ -85,6 +117,14 @@ short
         # right
         if element is not None
     ]
+    while True:
+        if False:
+            continue
+
+            # and round and round we go
+        # and round and round we go
+
+   # let's return
     return Node(
         syms.simple_stmt,
         [
@@ -93,6 +133,12 @@ short
         ],
     )
 
+
+#######################
+### SECTION COMMENT ###
+#######################
+
+
 instruction()
 
 # END COMMENTS
@@ -103,33 +149,60 @@ instruction()
 
 
 # Please keep __all__ alphabetized within each category.
+
 __all__ = [
     # Super-special typing primitives.
-    'Any',
-    'Callable',
-    'ClassVar',
+    "Any",
+    "Callable",
+    "ClassVar",
     # ABCs (from collections.abc).
-    'AbstractSet',  # collections.abc.Set.
-    'ByteString',
-    'Container',
+    "AbstractSet",  # collections.abc.Set.
+    "ByteString",
+    "Container",
     # Concrete collection types.
-    'Counter',
-    'Deque',
-    'Dict',
-    'DefaultDict',
-    'List',
-    'Set',
-    'FrozenSet',
-    'NamedTuple',  # Not really a type.
-    'Generator',
+    "Counter",
+    "Deque",
+    "Dict",
+    "DefaultDict",
+    "List",
+    "Set",
+    "FrozenSet",
+    "NamedTuple",  # Not really a type.
+    "Generator",
+]
+
+not_shareables = [
+    # singletons
+    True,
+    False,
+    NotImplemented,
+    ...,
+    # builtin types and objects
+    type,
+    object,
+    object(),
+    Exception(),
+    42,
+    100.0,
+    "spam",
+    # user-defined types and objects
+    Cheese,
+    Cheese("Wensleydale"),
+    SubBytes(b"spam"),
 ]
 
+if "PYTHON" in os.environ:
+    add_compiler(compiler_from_env())
+else:
+    # for compiler in compilers.values():
+    # add_compiler(compiler)
+    add_compiler(compilers[(7.0, 32)])
+    # add_compiler(compilers[(7.1, 64)])
 
+# Comment before function.
 def inline_comments_in_brackets_ruin_everything():
     if typedargslist:
-        parameters.children = [
-            parameters.children[0], body, parameters.children[-1]  # (1  # )1
-        ]
+        parameters.children = [children[0], body, children[-1]]  # (1  # )1
     else:
         parameters.children = [
             parameters.children[0],  # (2 what if this was actually long
@@ -145,12 +218,15 @@ def inline_comments_in_brackets_ruin_everything():
         and self._proc.poll() is None
     ):
         pass
+    # no newline before or after
     short = [
         # one
         1,
         # two
         2,
     ]
+
+    # no newline after
     call(
         arg1,
         arg2,
@@ -159,7 +235,9 @@ short
 """,
         arg3=True,
     )
+
     ############################################################################
+
     call2(
         # short
         arg1,
@@ -185,18 +263,32 @@ short
     ]
     lcomp3 = [
         # This one is actually too long to fit in a single line.
-        element.split('\n', 1)[0]
+        element.split("\n", 1)[0]
         # yup
         for element in collection.select_elements()
         # right
         if element is not None
     ]
+    while True:
+        if False:
+            continue
+
+            # and round and round we go
+        # and round and round we go
+
+    # let's return
     return Node(
         syms.simple_stmt,
-        [Node(statement, result), Leaf(token.NEWLINE, '\n')],  # FIXME: \r\n?
+        [Node(statement, result), Leaf(token.NEWLINE, "\n")],  # FIXME: \r\n?
     )
 
 
+#######################
+### SECTION COMMENT ###
+#######################
+
+
 instruction()
+
 # END COMMENTS
 # MORE END COMMENTS