| OLD | NEW |
| 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 """Generates java source files from a mojom.Module.""" | 5 """Generates java source files from a mojom.Module.""" |
| 6 | 6 |
| 7 import argparse | 7 import argparse |
| 8 import ast | 8 import ast |
| 9 import os | 9 import os |
| 10 import re | 10 import re |
| (...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 253 # Add Long suffix to all integer literals. | 253 # Add Long suffix to all integer literals. |
| 254 number = ast.literal_eval(token.lstrip('+ ')) | 254 number = ast.literal_eval(token.lstrip('+ ')) |
| 255 if not isinstance(number, (int, long)): | 255 if not isinstance(number, (int, long)): |
| 256 raise ValueError('got unexpected type %r for int literal %r' % ( | 256 raise ValueError('got unexpected type %r for int literal %r' % ( |
| 257 type(number), token)) | 257 type(number), token)) |
| 258 # If the literal is too large to fit a signed long, convert it to the | 258 # If the literal is too large to fit a signed long, convert it to the |
| 259 # equivalent signed long. | 259 # equivalent signed long. |
| 260 if number >= 2 ** 63: | 260 if number >= 2 ** 63: |
| 261 number -= 2 ** 64 | 261 number -= 2 ** 64 |
| 262 return '%dL' % number | 262 return '%dL' % number |
| 263 if kind_spec == 'd': |
| 264 # Translate Inf and NaN: |
| 265 if token == "Inf" or token == "+Inf": |
| 266 return "java.lang.Double.POSITIVE_INFINITY" |
| 267 if token == "-Inf": |
| 268 return "java.lang.Double.NEGATIVE_INFINITY" |
| 269 if token == "NaN": |
| 270 return "java.lang.Double.NaN" |
| 271 if kind_spec == 'f': |
| 272 # Translate Inf and NaN: |
| 273 if token == "Inf" or token == "+Inf": |
| 274 return "java.lang.Float.POSITIVE_INFINITY" |
| 275 if token == "-Inf": |
| 276 return "java.lang.Float.NEGATIVE_INFINITY" |
| 277 if token == "NaN": |
| 278 return "java.lang.Float.NaN" |
| 263 return token | 279 return token |
| 264 | 280 |
| 265 def IsPointerArrayKind(kind): | 281 def IsPointerArrayKind(kind): |
| 266 if not mojom.IsAnyArrayKind(kind): | 282 if not mojom.IsAnyArrayKind(kind): |
| 267 return False | 283 return False |
| 268 sub_kind = kind.kind | 284 sub_kind = kind.kind |
| 269 return mojom.IsObjectKind(sub_kind) | 285 return mojom.IsObjectKind(sub_kind) |
| 270 | 286 |
| 271 def GetConstantsMainEntityName(module): | 287 def GetConstantsMainEntityName(module): |
| 272 if 'JavaConstantsClassName' in module.attributes: | 288 if 'JavaConstantsClassName' in module.attributes: |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 362 def GetJinjaParameters(self): | 378 def GetJinjaParameters(self): |
| 363 return { | 379 return { |
| 364 'lstrip_blocks': True, | 380 'lstrip_blocks': True, |
| 365 'trim_blocks': True, | 381 'trim_blocks': True, |
| 366 } | 382 } |
| 367 | 383 |
| 368 def GetGlobals(self): | 384 def GetGlobals(self): |
| 369 return { | 385 return { |
| 370 'module': self.module, | 386 'module': self.module, |
| 371 } | 387 } |
| OLD | NEW |