redsnow 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (174) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +34 -0
  3. data/.gitmodules +3 -0
  4. data/.travis.yml +20 -0
  5. data/CHANGELOG.md +4 -0
  6. data/Gemfile +4 -0
  7. data/LICENSE +21 -0
  8. data/README.md +62 -0
  9. data/Rakefile +36 -0
  10. data/Vagrantfile +20 -0
  11. data/ext/snowcrash/Makefile +64 -0
  12. data/ext/snowcrash/Vagrantfile +20 -0
  13. data/ext/snowcrash/bin/snowcrash +0 -0
  14. data/ext/snowcrash/common.gypi +163 -0
  15. data/ext/snowcrash/config.gypi +10 -0
  16. data/ext/snowcrash/config.mk +5 -0
  17. data/ext/snowcrash/configure +213 -0
  18. data/ext/snowcrash/provisioning.sh +15 -0
  19. data/ext/snowcrash/snowcrash.gyp +141 -0
  20. data/ext/snowcrash/src/ActionParser.h +503 -0
  21. data/ext/snowcrash/src/AssetParser.h +215 -0
  22. data/ext/snowcrash/src/BlockUtility.h +186 -0
  23. data/ext/snowcrash/src/Blueprint.h +283 -0
  24. data/ext/snowcrash/src/BlueprintParser.h +347 -0
  25. data/ext/snowcrash/src/BlueprintParserCore.h +190 -0
  26. data/ext/snowcrash/src/BlueprintSection.h +140 -0
  27. data/ext/snowcrash/src/BlueprintUtility.h +126 -0
  28. data/ext/snowcrash/src/CBlueprint.cc +600 -0
  29. data/ext/snowcrash/src/CBlueprint.h +354 -0
  30. data/ext/snowcrash/src/CSourceAnnotation.cc +140 -0
  31. data/ext/snowcrash/src/CSourceAnnotation.h +106 -0
  32. data/ext/snowcrash/src/CodeBlockUtility.h +189 -0
  33. data/ext/snowcrash/src/DescriptionSectionUtility.h +156 -0
  34. data/ext/snowcrash/src/HTTP.cc +46 -0
  35. data/ext/snowcrash/src/HTTP.h +105 -0
  36. data/ext/snowcrash/src/HeaderParser.h +289 -0
  37. data/ext/snowcrash/src/ListBlockUtility.h +273 -0
  38. data/ext/snowcrash/src/ListUtility.h +95 -0
  39. data/ext/snowcrash/src/MarkdownBlock.cc +176 -0
  40. data/ext/snowcrash/src/MarkdownBlock.h +93 -0
  41. data/ext/snowcrash/src/MarkdownParser.cc +266 -0
  42. data/ext/snowcrash/src/MarkdownParser.h +88 -0
  43. data/ext/snowcrash/src/ParameterDefinitonParser.h +570 -0
  44. data/ext/snowcrash/src/ParametersParser.h +252 -0
  45. data/ext/snowcrash/src/Parser.cc +71 -0
  46. data/ext/snowcrash/src/Parser.h +29 -0
  47. data/ext/snowcrash/src/ParserCore.cc +120 -0
  48. data/ext/snowcrash/src/ParserCore.h +82 -0
  49. data/ext/snowcrash/src/PayloadParser.h +672 -0
  50. data/ext/snowcrash/src/Platform.h +54 -0
  51. data/ext/snowcrash/src/RegexMatch.h +32 -0
  52. data/ext/snowcrash/src/ResourceGroupParser.h +195 -0
  53. data/ext/snowcrash/src/ResourceParser.h +584 -0
  54. data/ext/snowcrash/src/SectionUtility.h +142 -0
  55. data/ext/snowcrash/src/Serialize.cc +52 -0
  56. data/ext/snowcrash/src/Serialize.h +69 -0
  57. data/ext/snowcrash/src/SerializeJSON.cc +601 -0
  58. data/ext/snowcrash/src/SerializeJSON.h +21 -0
  59. data/ext/snowcrash/src/SerializeYAML.cc +336 -0
  60. data/ext/snowcrash/src/SerializeYAML.h +21 -0
  61. data/ext/snowcrash/src/SourceAnnotation.h +177 -0
  62. data/ext/snowcrash/src/StringUtility.h +109 -0
  63. data/ext/snowcrash/src/SymbolTable.h +83 -0
  64. data/ext/snowcrash/src/UriTemplateParser.cc +195 -0
  65. data/ext/snowcrash/src/UriTemplateParser.h +243 -0
  66. data/ext/snowcrash/src/Version.h +39 -0
  67. data/ext/snowcrash/src/csnowcrash.cc +23 -0
  68. data/ext/snowcrash/src/csnowcrash.h +38 -0
  69. data/ext/snowcrash/src/posix/RegexMatch.cc +99 -0
  70. data/ext/snowcrash/src/snowcrash.cc +18 -0
  71. data/ext/snowcrash/src/snowcrash.h +41 -0
  72. data/ext/snowcrash/src/snowcrash/snowcrash.cc +170 -0
  73. data/ext/snowcrash/src/win/RegexMatch.cc +78 -0
  74. data/ext/snowcrash/sundown/CONTRIBUTING.md +10 -0
  75. data/ext/snowcrash/sundown/Makefile +83 -0
  76. data/ext/snowcrash/sundown/Makefile.win +33 -0
  77. data/ext/snowcrash/sundown/examples/smartypants.c +72 -0
  78. data/ext/snowcrash/sundown/examples/sundown.c +80 -0
  79. data/ext/snowcrash/sundown/html/houdini.h +37 -0
  80. data/ext/snowcrash/sundown/html/houdini_href_e.c +108 -0
  81. data/ext/snowcrash/sundown/html/houdini_html_e.c +84 -0
  82. data/ext/snowcrash/sundown/html/html.c +647 -0
  83. data/ext/snowcrash/sundown/html/html.h +77 -0
  84. data/ext/snowcrash/sundown/html/html_smartypants.c +389 -0
  85. data/ext/snowcrash/sundown/html_block_names.txt +25 -0
  86. data/ext/snowcrash/sundown/src/autolink.c +297 -0
  87. data/ext/snowcrash/sundown/src/autolink.h +51 -0
  88. data/ext/snowcrash/sundown/src/buffer.c +225 -0
  89. data/ext/snowcrash/sundown/src/buffer.h +96 -0
  90. data/ext/snowcrash/sundown/src/html_blocks.h +206 -0
  91. data/ext/snowcrash/sundown/src/markdown.c +2701 -0
  92. data/ext/snowcrash/sundown/src/markdown.h +147 -0
  93. data/ext/snowcrash/sundown/src/src_map.c +200 -0
  94. data/ext/snowcrash/sundown/src/src_map.h +58 -0
  95. data/ext/snowcrash/sundown/src/stack.c +81 -0
  96. data/ext/snowcrash/sundown/src/stack.h +29 -0
  97. data/ext/snowcrash/sundown/sundown.def +20 -0
  98. data/ext/snowcrash/tools/gyp/AUTHORS +11 -0
  99. data/ext/snowcrash/tools/gyp/DEPS +24 -0
  100. data/ext/snowcrash/tools/gyp/OWNERS +1 -0
  101. data/ext/snowcrash/tools/gyp/PRESUBMIT.py +120 -0
  102. data/ext/snowcrash/tools/gyp/buildbot/buildbot_run.py +190 -0
  103. data/ext/snowcrash/tools/gyp/codereview.settings +10 -0
  104. data/ext/snowcrash/tools/gyp/data/win/large-pdb-shim.cc +12 -0
  105. data/ext/snowcrash/tools/gyp/gyp +8 -0
  106. data/ext/snowcrash/tools/gyp/gyp.bat +5 -0
  107. data/ext/snowcrash/tools/gyp/gyp_main.py +18 -0
  108. data/ext/snowcrash/tools/gyp/pylib/gyp/MSVSNew.py +340 -0
  109. data/ext/snowcrash/tools/gyp/pylib/gyp/MSVSProject.py +208 -0
  110. data/ext/snowcrash/tools/gyp/pylib/gyp/MSVSSettings.py +1063 -0
  111. data/ext/snowcrash/tools/gyp/pylib/gyp/MSVSToolFile.py +58 -0
  112. data/ext/snowcrash/tools/gyp/pylib/gyp/MSVSUserFile.py +147 -0
  113. data/ext/snowcrash/tools/gyp/pylib/gyp/MSVSUtil.py +267 -0
  114. data/ext/snowcrash/tools/gyp/pylib/gyp/MSVSVersion.py +409 -0
  115. data/ext/snowcrash/tools/gyp/pylib/gyp/__init__.py +537 -0
  116. data/ext/snowcrash/tools/gyp/pylib/gyp/__init__.pyc +0 -0
  117. data/ext/snowcrash/tools/gyp/pylib/gyp/common.py +521 -0
  118. data/ext/snowcrash/tools/gyp/pylib/gyp/common.pyc +0 -0
  119. data/ext/snowcrash/tools/gyp/pylib/gyp/easy_xml.py +157 -0
  120. data/ext/snowcrash/tools/gyp/pylib/gyp/flock_tool.py +49 -0
  121. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/__init__.py +0 -0
  122. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/__init__.pyc +0 -0
  123. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/android.py +1069 -0
  124. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/cmake.py +1143 -0
  125. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/dump_dependency_json.py +81 -0
  126. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/eclipse.py +335 -0
  127. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/gypd.py +87 -0
  128. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/gypsh.py +56 -0
  129. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/make.py +2181 -0
  130. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/make.pyc +0 -0
  131. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/msvs.py +3335 -0
  132. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/ninja.py +2156 -0
  133. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/xcode.py +1224 -0
  134. data/ext/snowcrash/tools/gyp/pylib/gyp/generator/xcode.pyc +0 -0
  135. data/ext/snowcrash/tools/gyp/pylib/gyp/input.py +2809 -0
  136. data/ext/snowcrash/tools/gyp/pylib/gyp/input.pyc +0 -0
  137. data/ext/snowcrash/tools/gyp/pylib/gyp/mac_tool.py +510 -0
  138. data/ext/snowcrash/tools/gyp/pylib/gyp/msvs_emulation.py +972 -0
  139. data/ext/snowcrash/tools/gyp/pylib/gyp/ninja_syntax.py +160 -0
  140. data/ext/snowcrash/tools/gyp/pylib/gyp/ordered_dict.py +289 -0
  141. data/ext/snowcrash/tools/gyp/pylib/gyp/win_tool.py +292 -0
  142. data/ext/snowcrash/tools/gyp/pylib/gyp/xcode_emulation.py +1440 -0
  143. data/ext/snowcrash/tools/gyp/pylib/gyp/xcode_emulation.pyc +0 -0
  144. data/ext/snowcrash/tools/gyp/pylib/gyp/xcodeproj_file.py +2889 -0
  145. data/ext/snowcrash/tools/gyp/pylib/gyp/xcodeproj_file.pyc +0 -0
  146. data/ext/snowcrash/tools/gyp/pylib/gyp/xml_fix.py +69 -0
  147. data/ext/snowcrash/tools/gyp/pylintrc +307 -0
  148. data/ext/snowcrash/tools/gyp/samples/samples +81 -0
  149. data/ext/snowcrash/tools/gyp/samples/samples.bat +5 -0
  150. data/ext/snowcrash/tools/gyp/setup.py +19 -0
  151. data/ext/snowcrash/tools/gyp/tools/Xcode/Specifications/gyp.pbfilespec +27 -0
  152. data/ext/snowcrash/tools/gyp/tools/Xcode/Specifications/gyp.xclangspec +226 -0
  153. data/ext/snowcrash/tools/gyp/tools/emacs/gyp.el +252 -0
  154. data/ext/snowcrash/tools/gyp/tools/graphviz.py +100 -0
  155. data/ext/snowcrash/tools/gyp/tools/pretty_gyp.py +155 -0
  156. data/ext/snowcrash/tools/gyp/tools/pretty_sln.py +168 -0
  157. data/ext/snowcrash/tools/gyp/tools/pretty_vcproj.py +329 -0
  158. data/ext/snowcrash/tools/homebrew/snowcrash.rb +11 -0
  159. data/ext/snowcrash/vcbuild.bat +184 -0
  160. data/lib/redsnow.rb +31 -0
  161. data/lib/redsnow/binding.rb +132 -0
  162. data/lib/redsnow/blueprint.rb +365 -0
  163. data/lib/redsnow/object.rb +18 -0
  164. data/lib/redsnow/parseresult.rb +107 -0
  165. data/lib/redsnow/version.rb +4 -0
  166. data/provisioning.sh +20 -0
  167. data/redsnow.gemspec +35 -0
  168. data/test/_helper.rb +15 -0
  169. data/test/fixtures/sample-api-ast.json +97 -0
  170. data/test/fixtures/sample-api.apib +20 -0
  171. data/test/redsnow_binding_test.rb +35 -0
  172. data/test/redsnow_parseresult_test.rb +50 -0
  173. data/test/redsnow_test.rb +285 -0
  174. metadata +358 -0
@@ -0,0 +1,69 @@
1
+ # Copyright (c) 2011 Google Inc. All rights reserved.
2
+ # Use of this source code is governed by a BSD-style license that can be
3
+ # found in the LICENSE file.
4
+
5
+ """Applies a fix to CR LF TAB handling in xml.dom.
6
+
7
+ Fixes this: http://code.google.com/p/chromium/issues/detail?id=76293
8
+ Working around this: http://bugs.python.org/issue5752
9
+ TODO(bradnelson): Consider dropping this when we drop XP support.
10
+ """
11
+
12
+
13
+ import xml.dom.minidom
14
+
15
+
16
+ def _Replacement_write_data(writer, data, is_attrib=False):
17
+ """Writes datachars to writer."""
18
+ data = data.replace("&", "&amp;").replace("<", "&lt;")
19
+ data = data.replace("\"", "&quot;").replace(">", "&gt;")
20
+ if is_attrib:
21
+ data = data.replace(
22
+ "\r", "&#xD;").replace(
23
+ "\n", "&#xA;").replace(
24
+ "\t", "&#x9;")
25
+ writer.write(data)
26
+
27
+
28
+ def _Replacement_writexml(self, writer, indent="", addindent="", newl=""):
29
+ # indent = current indentation
30
+ # addindent = indentation to add to higher levels
31
+ # newl = newline string
32
+ writer.write(indent+"<" + self.tagName)
33
+
34
+ attrs = self._get_attributes()
35
+ a_names = attrs.keys()
36
+ a_names.sort()
37
+
38
+ for a_name in a_names:
39
+ writer.write(" %s=\"" % a_name)
40
+ _Replacement_write_data(writer, attrs[a_name].value, is_attrib=True)
41
+ writer.write("\"")
42
+ if self.childNodes:
43
+ writer.write(">%s" % newl)
44
+ for node in self.childNodes:
45
+ node.writexml(writer, indent + addindent, addindent, newl)
46
+ writer.write("%s</%s>%s" % (indent, self.tagName, newl))
47
+ else:
48
+ writer.write("/>%s" % newl)
49
+
50
+
51
+ class XmlFix(object):
52
+ """Object to manage temporary patching of xml.dom.minidom."""
53
+
54
+ def __init__(self):
55
+ # Preserve current xml.dom.minidom functions.
56
+ self.write_data = xml.dom.minidom._write_data
57
+ self.writexml = xml.dom.minidom.Element.writexml
58
+ # Inject replacement versions of a function and a method.
59
+ xml.dom.minidom._write_data = _Replacement_write_data
60
+ xml.dom.minidom.Element.writexml = _Replacement_writexml
61
+
62
+ def Cleanup(self):
63
+ if self.write_data:
64
+ xml.dom.minidom._write_data = self.write_data
65
+ xml.dom.minidom.Element.writexml = self.writexml
66
+ self.write_data = None
67
+
68
+ def __del__(self):
69
+ self.Cleanup()
@@ -0,0 +1,307 @@
1
+ [MASTER]
2
+
3
+ # Specify a configuration file.
4
+ #rcfile=
5
+
6
+ # Python code to execute, usually for sys.path manipulation such as
7
+ # pygtk.require().
8
+ #init-hook=
9
+
10
+ # Profiled execution.
11
+ profile=no
12
+
13
+ # Add files or directories to the blacklist. They should be base names, not
14
+ # paths.
15
+ ignore=CVS
16
+
17
+ # Pickle collected data for later comparisons.
18
+ persistent=yes
19
+
20
+ # List of plugins (as comma separated values of python modules names) to load,
21
+ # usually to register additional checkers.
22
+ load-plugins=
23
+
24
+
25
+ [MESSAGES CONTROL]
26
+
27
+ # Enable the message, report, category or checker with the given id(s). You can
28
+ # either give multiple identifier separated by comma (,) or put this option
29
+ # multiple time.
30
+ #enable=
31
+
32
+ # Disable the message, report, category or checker with the given id(s). You
33
+ # can either give multiple identifier separated by comma (,) or put this option
34
+ # multiple time (only on the command line, not in the configuration file where
35
+ # it should appear only once).
36
+ # C0103: Invalid name "NN" (should match [a-z_][a-z0-9_]{2,30}$)
37
+ # C0111: Missing docstring
38
+ # C0302: Too many lines in module (NN)
39
+ # R0902: Too many instance attributes (N/7)
40
+ # R0903: Too few public methods (N/2)
41
+ # R0904: Too many public methods (NN/20)
42
+ # R0912: Too many branches (NN/12)
43
+ # R0913: Too many arguments (N/5)
44
+ # R0914: Too many local variables (NN/15)
45
+ # R0915: Too many statements (NN/50)
46
+ # W0141: Used builtin function 'map'
47
+ # W0142: Used * or ** magic
48
+ # W0232: Class has no __init__ method
49
+ # W0511: TODO
50
+ # W0603: Using the global statement
51
+ #
52
+ # These should be enabled eventually:
53
+ # C0112: Empty docstring
54
+ # C0301: Line too long (NN/80)
55
+ # C0321: More than one statement on single line
56
+ # C0322: Operator not preceded by a space
57
+ # C0323: Operator not followed by a space
58
+ # C0324: Comma not followed by a space
59
+ # E0101: Explicit return in __init__
60
+ # E0102: function already defined line NN
61
+ # E1002: Use of super on an old style class
62
+ # E1101: Instance of 'XX' has no 'YY' member
63
+ # E1103: Instance of 'XX' has no 'XX' member (but some types could not be inferred)
64
+ # E0602: Undefined variable 'XX'
65
+ # F0401: Unable to import 'XX'
66
+ # R0201: Method could be a function
67
+ # R0801: Similar lines in N files
68
+ # W0102: Dangerous default value {} as argument
69
+ # W0104: Statement seems to have no effect
70
+ # W0105: String statement has no effect
71
+ # W0108: Lambda may not be necessary
72
+ # W0201: Attribute 'XX' defined outside __init__
73
+ # W0212: Access to a protected member XX of a client class
74
+ # W0221: Arguments number differs from overridden method
75
+ # W0223: Method 'XX' is abstract in class 'YY' but is not overridden
76
+ # W0231: __init__ method from base class 'XX' is not called
77
+ # W0301: Unnecessary semicolon
78
+ # W0311: Bad indentation. Found NN spaces, expected NN
79
+ # W0401: Wildcard import XX
80
+ # W0402: Uses of a deprecated module 'string'
81
+ # W0403: Relative import 'XX', should be 'YY.XX'
82
+ # W0404: Reimport 'XX' (imported line NN)
83
+ # W0601: Global variable 'XX' undefined at the module level
84
+ # W0602: Using global for 'XX' but no assignment is done
85
+ # W0611: Unused import pprint
86
+ # W0612: Unused variable 'XX'
87
+ # W0613: Unused argument 'XX'
88
+ # W0614: Unused import XX from wildcard import
89
+ # W0621: Redefining name 'XX' from outer scope (line NN)
90
+ # W0622: Redefining built-in 'NN'
91
+ # W0631: Using possibly undefined loop variable 'XX'
92
+ # W0701: Raising a string exception
93
+ # W0702: No exception type(s) specified
94
+ disable=C0103,C0111,C0302,R0902,R0903,R0904,R0912,R0913,R0914,R0915,W0141,W0142,W0232,W0511,W0603,C0112,C0301,C0321,C0322,C0323,C0324,E0101,E0102,E1002,E1101,E1103,E0602,F0401,R0201,R0801,W0102,W0104,W0105,W0108,W0201,W0212,W0221,W0223,W0231,W0301,W0311,W0401,W0402,W0403,W0404,W0601,W0602,W0611,W0612,W0613,W0614,W0621,W0622,W0631,W0701,W0702
95
+
96
+
97
+ [REPORTS]
98
+
99
+ # Set the output format. Available formats are text, parseable, colorized, msvs
100
+ # (visual studio) and html
101
+ output-format=text
102
+
103
+ # Include message's id in output
104
+ include-ids=yes
105
+
106
+ # Put messages in a separate file for each module / package specified on the
107
+ # command line instead of printing them on stdout. Reports (if any) will be
108
+ # written in a file name "pylint_global.[txt|html]".
109
+ files-output=no
110
+
111
+ # Tells whether to display a full report or only the messages
112
+ reports=no
113
+
114
+ # Python expression which should return a note less than 10 (10 is the highest
115
+ # note). You have access to the variables errors warning, statement which
116
+ # respectively contain the number of errors / warnings messages and the total
117
+ # number of statements analyzed. This is used by the global evaluation report
118
+ # (RP0004).
119
+ evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10)
120
+
121
+ # Add a comment according to your evaluation note. This is used by the global
122
+ # evaluation report (RP0004).
123
+ comment=no
124
+
125
+
126
+ [VARIABLES]
127
+
128
+ # Tells whether we should check for unused import in __init__ files.
129
+ init-import=no
130
+
131
+ # A regular expression matching the beginning of the name of dummy variables
132
+ # (i.e. not used).
133
+ dummy-variables-rgx=_|dummy
134
+
135
+ # List of additional names supposed to be defined in builtins. Remember that
136
+ # you should avoid to define new builtins when possible.
137
+ additional-builtins=
138
+
139
+
140
+ [TYPECHECK]
141
+
142
+ # Tells whether missing members accessed in mixin class should be ignored. A
143
+ # mixin class is detected if its name ends with "mixin" (case insensitive).
144
+ ignore-mixin-members=yes
145
+
146
+ # List of classes names for which member attributes should not be checked
147
+ # (useful for classes with attributes dynamically set).
148
+ ignored-classes=SQLObject
149
+
150
+ # When zope mode is activated, add a predefined set of Zope acquired attributes
151
+ # to generated-members.
152
+ zope=no
153
+
154
+ # List of members which are set dynamically and missed by pylint inference
155
+ # system, and so shouldn't trigger E0201 when accessed. Python regular
156
+ # expressions are accepted.
157
+ generated-members=REQUEST,acl_users,aq_parent
158
+
159
+
160
+ [MISCELLANEOUS]
161
+
162
+ # List of note tags to take in consideration, separated by a comma.
163
+ notes=FIXME,XXX,TODO
164
+
165
+
166
+ [SIMILARITIES]
167
+
168
+ # Minimum lines number of a similarity.
169
+ min-similarity-lines=4
170
+
171
+ # Ignore comments when computing similarities.
172
+ ignore-comments=yes
173
+
174
+ # Ignore docstrings when computing similarities.
175
+ ignore-docstrings=yes
176
+
177
+
178
+ [FORMAT]
179
+
180
+ # Maximum number of characters on a single line.
181
+ max-line-length=80
182
+
183
+ # Maximum number of lines in a module
184
+ max-module-lines=1000
185
+
186
+ # String used as indentation unit. This is usually " " (4 spaces) or "\t" (1
187
+ # tab).
188
+ indent-string=' '
189
+
190
+
191
+ [BASIC]
192
+
193
+ # Required attributes for module, separated by a comma
194
+ required-attributes=
195
+
196
+ # List of builtins function names that should not be used, separated by a comma
197
+ bad-functions=map,filter,apply,input
198
+
199
+ # Regular expression which should only match correct module names
200
+ module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$
201
+
202
+ # Regular expression which should only match correct module level names
203
+ const-rgx=(([A-Z_][A-Z0-9_]*)|(__.*__))$
204
+
205
+ # Regular expression which should only match correct class names
206
+ class-rgx=[A-Z_][a-zA-Z0-9]+$
207
+
208
+ # Regular expression which should only match correct function names
209
+ function-rgx=[a-z_][a-z0-9_]{2,30}$
210
+
211
+ # Regular expression which should only match correct method names
212
+ method-rgx=[a-z_][a-z0-9_]{2,30}$
213
+
214
+ # Regular expression which should only match correct instance attribute names
215
+ attr-rgx=[a-z_][a-z0-9_]{2,30}$
216
+
217
+ # Regular expression which should only match correct argument names
218
+ argument-rgx=[a-z_][a-z0-9_]{2,30}$
219
+
220
+ # Regular expression which should only match correct variable names
221
+ variable-rgx=[a-z_][a-z0-9_]{2,30}$
222
+
223
+ # Regular expression which should only match correct list comprehension /
224
+ # generator expression variable names
225
+ inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$
226
+
227
+ # Good variable names which should always be accepted, separated by a comma
228
+ good-names=i,j,k,ex,Run,_
229
+
230
+ # Bad variable names which should always be refused, separated by a comma
231
+ bad-names=foo,bar,baz,toto,tutu,tata
232
+
233
+ # Regular expression which should only match functions or classes name which do
234
+ # not require a docstring
235
+ no-docstring-rgx=__.*__
236
+
237
+
238
+ [DESIGN]
239
+
240
+ # Maximum number of arguments for function / method
241
+ max-args=5
242
+
243
+ # Argument names that match this expression will be ignored. Default to name
244
+ # with leading underscore
245
+ ignored-argument-names=_.*
246
+
247
+ # Maximum number of locals for function / method body
248
+ max-locals=15
249
+
250
+ # Maximum number of return / yield for function / method body
251
+ max-returns=6
252
+
253
+ # Maximum number of branch for function / method body
254
+ max-branchs=12
255
+
256
+ # Maximum number of statements in function / method body
257
+ max-statements=50
258
+
259
+ # Maximum number of parents for a class (see R0901).
260
+ max-parents=7
261
+
262
+ # Maximum number of attributes for a class (see R0902).
263
+ max-attributes=7
264
+
265
+ # Minimum number of public methods for a class (see R0903).
266
+ min-public-methods=2
267
+
268
+ # Maximum number of public methods for a class (see R0904).
269
+ max-public-methods=20
270
+
271
+
272
+ [CLASSES]
273
+
274
+ # List of interface methods to ignore, separated by a comma. This is used for
275
+ # instance to not check methods defines in Zope's Interface base class.
276
+ ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by
277
+
278
+ # List of method names used to declare (i.e. assign) instance attributes.
279
+ defining-attr-methods=__init__,__new__,setUp
280
+
281
+ # List of valid names for the first argument in a class method.
282
+ valid-classmethod-first-arg=cls
283
+
284
+
285
+ [IMPORTS]
286
+
287
+ # Deprecated modules which should not be used, separated by a comma
288
+ deprecated-modules=regsub,string,TERMIOS,Bastion,rexec
289
+
290
+ # Create a graph of every (i.e. internal and external) dependencies in the
291
+ # given file (report RP0402 must not be disabled)
292
+ import-graph=
293
+
294
+ # Create a graph of external dependencies in the given file (report RP0402 must
295
+ # not be disabled)
296
+ ext-import-graph=
297
+
298
+ # Create a graph of internal dependencies in the given file (report RP0402 must
299
+ # not be disabled)
300
+ int-import-graph=
301
+
302
+
303
+ [EXCEPTIONS]
304
+
305
+ # Exceptions that will emit a warning when being caught. Defaults to
306
+ # "Exception"
307
+ overgeneral-exceptions=Exception
@@ -0,0 +1,81 @@
1
+ #!/usr/bin/python
2
+
3
+ # Copyright (c) 2009 Google Inc. All rights reserved.
4
+ # Use of this source code is governed by a BSD-style license that can be
5
+ # found in the LICENSE file.
6
+
7
+ import os.path
8
+ import shutil
9
+ import sys
10
+
11
+
12
+ gyps = [
13
+ 'app/app.gyp',
14
+ 'base/base.gyp',
15
+ 'build/temp_gyp/googleurl.gyp',
16
+ 'build/all.gyp',
17
+ 'build/common.gypi',
18
+ 'build/external_code.gypi',
19
+ 'chrome/test/security_tests/security_tests.gyp',
20
+ 'chrome/third_party/hunspell/hunspell.gyp',
21
+ 'chrome/chrome.gyp',
22
+ 'media/media.gyp',
23
+ 'net/net.gyp',
24
+ 'printing/printing.gyp',
25
+ 'sdch/sdch.gyp',
26
+ 'skia/skia.gyp',
27
+ 'testing/gmock.gyp',
28
+ 'testing/gtest.gyp',
29
+ 'third_party/bzip2/bzip2.gyp',
30
+ 'third_party/icu38/icu38.gyp',
31
+ 'third_party/libevent/libevent.gyp',
32
+ 'third_party/libjpeg/libjpeg.gyp',
33
+ 'third_party/libpng/libpng.gyp',
34
+ 'third_party/libxml/libxml.gyp',
35
+ 'third_party/libxslt/libxslt.gyp',
36
+ 'third_party/lzma_sdk/lzma_sdk.gyp',
37
+ 'third_party/modp_b64/modp_b64.gyp',
38
+ 'third_party/npapi/npapi.gyp',
39
+ 'third_party/sqlite/sqlite.gyp',
40
+ 'third_party/zlib/zlib.gyp',
41
+ 'v8/tools/gyp/v8.gyp',
42
+ 'webkit/activex_shim/activex_shim.gyp',
43
+ 'webkit/activex_shim_dll/activex_shim_dll.gyp',
44
+ 'webkit/build/action_csspropertynames.py',
45
+ 'webkit/build/action_cssvaluekeywords.py',
46
+ 'webkit/build/action_jsconfig.py',
47
+ 'webkit/build/action_makenames.py',
48
+ 'webkit/build/action_maketokenizer.py',
49
+ 'webkit/build/action_useragentstylesheets.py',
50
+ 'webkit/build/rule_binding.py',
51
+ 'webkit/build/rule_bison.py',
52
+ 'webkit/build/rule_gperf.py',
53
+ 'webkit/tools/test_shell/test_shell.gyp',
54
+ 'webkit/webkit.gyp',
55
+ ]
56
+
57
+
58
+ def Main(argv):
59
+ if len(argv) != 3 or argv[1] not in ['push', 'pull']:
60
+ print 'Usage: %s push/pull PATH_TO_CHROME' % argv[0]
61
+ return 1
62
+
63
+ path_to_chrome = argv[2]
64
+
65
+ for g in gyps:
66
+ chrome_file = os.path.join(path_to_chrome, g)
67
+ local_file = os.path.join(os.path.dirname(argv[0]), os.path.split(g)[1])
68
+ if argv[1] == 'push':
69
+ print 'Copying %s to %s' % (local_file, chrome_file)
70
+ shutil.copyfile(local_file, chrome_file)
71
+ elif argv[1] == 'pull':
72
+ print 'Copying %s to %s' % (chrome_file, local_file)
73
+ shutil.copyfile(chrome_file, local_file)
74
+ else:
75
+ assert False
76
+
77
+ return 0
78
+
79
+
80
+ if __name__ == '__main__':
81
+ sys.exit(Main(sys.argv))