Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Unified Diff: tracing/third_party/tvcm/tvcm/strip_js_comments.py

Issue 1376953005: Move tracing/third_party/tvcm -> third_party/py_vulcanize. (Closed) Base URL: git@github.com:catapult-project/catapult.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tracing/third_party/tvcm/tvcm/strip_js_comments.py
diff --git a/tracing/third_party/tvcm/tvcm/strip_js_comments.py b/tracing/third_party/tvcm/tvcm/strip_js_comments.py
deleted file mode 100644
index e313e963afb10b39e804e826b22a9b1afda8a802..0000000000000000000000000000000000000000
--- a/tracing/third_party/tvcm/tvcm/strip_js_comments.py
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 2013 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Utility function for stripping comments out of JavaScript source code."""
-
-import re
-
-
-def _TokenizeJS(text):
- """Splits source code text into segments in preparation for comment stripping.
-
- Note that this doesn't tokenize for parsing. There is no notion of statements,
- variables, etc. The only tokens of interest are comment-related tokens.
-
- Args:
- text: The contents of a JavaScript file.
-
- Yields:
- A succession of strings in the file, including all comment-related symbols.
- """
- rest = text
- tokens = ["//", "/*", "*/", "\n"]
- next_tok = re.compile('|'.join([re.escape(x) for x in tokens]))
- while len(rest):
- m = next_tok.search(rest)
- if not m:
- # end of string
- yield rest
- return
- min_index = m.start()
- end_index = m.end()
-
- if min_index > 0:
- yield rest[:min_index]
-
- yield rest[min_index:end_index]
- rest = rest[end_index:]
-
-
-def StripJSComments(text):
- """Strips comments out of JavaScript source code.
-
- Args:
- text: JavaScript source text.
-
- Returns:
- JavaScript source text with comments stripped out.
- """
- result_tokens = []
- token_stream = _TokenizeJS(text).__iter__()
- while True:
- try:
- t = token_stream.next()
- except StopIteration:
- break
-
- if t == "//":
- while True:
- try:
- t2 = token_stream.next()
- if t2 == "\n":
- break
- except StopIteration:
- break
- elif t == '/*':
- nesting = 1
- while True:
- try:
- t2 = token_stream.next()
- if t2 == "/*":
- nesting += 1
- elif t2 == "*/":
- nesting -= 1
- if nesting == 0:
- break
- except StopIteration:
- break
- else:
- result_tokens.append(t)
- return "".join(result_tokens)

Powered by Google App Engine
This is Rietveld 408576698