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

Side by Side Diff: mojo/public/tools/bindings/pylib/mojom/parse/lexer.py

Issue 272323003: Mojo: Implement support for |Foo&| mojom syntax (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 6 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import imp 5 import imp
6 import os.path 6 import os.path
7 import sys 7 import sys
8 8
9 # Disable lint check for finding modules: 9 # Disable lint check for finding modules:
10 # pylint: disable=F0401 10 # pylint: disable=F0401
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 'INT_CONST_DEC', 'INT_CONST_HEX', 82 'INT_CONST_DEC', 'INT_CONST_HEX',
83 'FLOAT_CONST', 83 'FLOAT_CONST',
84 'CHAR_CONST', 84 'CHAR_CONST',
85 85
86 # String literals 86 # String literals
87 'STRING_LITERAL', 87 'STRING_LITERAL',
88 88
89 # Operators 89 # Operators
90 'PLUS', 'MINUS', 'TIMES', 'DIVIDE', 'MOD', 90 'PLUS', 'MINUS', 'TIMES', 'DIVIDE', 'MOD',
91 'OR', 'AND', 'NOT', 'XOR', 'LSHIFT', 'RSHIFT', 91 'OR', 'AND', 'NOT', 'XOR', 'LSHIFT', 'RSHIFT',
92 'AMP',
92 93
93 # Assignment 94 # Assignment
94 'EQUALS', 95 'EQUALS',
95 96
96 # Request / response 97 # Request / response
97 'RESPONSE', 98 'RESPONSE',
98 99
99 # Delimiters 100 # Delimiters
100 'LPAREN', 'RPAREN', # ( ) 101 'LPAREN', 'RPAREN', # ( )
101 'LBRACKET', 'RBRACKET', # [ ] 102 'LBRACKET', 'RBRACKET', # [ ]
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
176 t_MINUS = r'-' 177 t_MINUS = r'-'
177 t_TIMES = r'\*' 178 t_TIMES = r'\*'
178 t_DIVIDE = r'/' 179 t_DIVIDE = r'/'
179 t_MOD = r'%' 180 t_MOD = r'%'
180 t_OR = r'\|' 181 t_OR = r'\|'
181 t_AND = r'&' 182 t_AND = r'&'
182 t_NOT = r'~' 183 t_NOT = r'~'
183 t_XOR = r'\^' 184 t_XOR = r'\^'
184 t_LSHIFT = r'<<' 185 t_LSHIFT = r'<<'
185 t_RSHIFT = r'>>' 186 t_RSHIFT = r'>>'
187 t_AMP = r'&'
186 188
187 # = 189 # =
188 t_EQUALS = r'=' 190 t_EQUALS = r'='
189 191
190 # => 192 # =>
191 t_RESPONSE = r'=>' 193 t_RESPONSE = r'=>'
192 194
193 # Delimiters 195 # Delimiters
194 t_LPAREN = r'\(' 196 t_LPAREN = r'\('
195 t_RPAREN = r'\)' 197 t_RPAREN = r'\)'
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
272 return t 274 return t
273 275
274 # Ignore C and C++ style comments 276 # Ignore C and C++ style comments
275 def t_COMMENT(self, t): 277 def t_COMMENT(self, t):
276 r'(/\*(.|\n)*?\*/)|(//.*(\n[ \t]*//.*)*)' 278 r'(/\*(.|\n)*?\*/)|(//.*(\n[ \t]*//.*)*)'
277 t.lexer.lineno += t.value.count("\n") 279 t.lexer.lineno += t.value.count("\n")
278 280
279 def t_error(self, t): 281 def t_error(self, t):
280 msg = "Illegal character %s" % repr(t.value[0]) 282 msg = "Illegal character %s" % repr(t.value[0])
281 self._error(msg, t) 283 self._error(msg, t)
OLDNEW
« no previous file with comments | « mojo/public/tools/bindings/pylib/mojom/generate/pack.py ('k') | mojo/public/tools/bindings/pylib/mojom/parse/parser.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698