OLD | NEW |
1 #!/usr/bin/python | 1 #!/usr/bin/python |
2 # | 2 # |
3 # Copyright (c) 2011 The Chromium Authors. All rights reserved. | 3 # Copyright (c) 2011 The Chromium Authors. All rights reserved. |
4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
6 | 6 |
7 """Nodes for PPAPI IDL AST""" | 7 """Nodes for PPAPI IDL AST""" |
8 | 8 |
9 # | 9 # |
10 # IDL Node | 10 # IDL Node |
(...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
266 def GetRelease(self, version): | 266 def GetRelease(self, version): |
267 label = self.GetLabel() | 267 label = self.GetLabel() |
268 if not label: return None | 268 if not label: return None |
269 return label.GetRelease(version) | 269 return label.GetRelease(version) |
270 | 270 |
271 def GetVersion(self, release): | 271 def GetVersion(self, release): |
272 label = self.GetLabel() | 272 label = self.GetLabel() |
273 if not label: return None | 273 if not label: return None |
274 return label.GetVersion(release) | 274 return label.GetVersion(release) |
275 | 275 |
| 276 def GetUniqueReleases(self, releases): |
| 277 # Given a list of release, return a subset of releases that change. |
| 278 last_hash = None |
| 279 build_list = [] |
| 280 for rel in releases: |
| 281 cur_hash = self.GetHash(rel) |
| 282 if last_hash != cur_hash: |
| 283 build_list.append(rel) |
| 284 last_hash = cur_hash |
| 285 return build_list |
| 286 |
276 def SetProperty(self, name, val): | 287 def SetProperty(self, name, val): |
277 self.property_node.SetProperty(name, val) | 288 self.property_node.SetProperty(name, val) |
278 | 289 |
279 def GetProperty(self, name, default=None): | 290 def GetProperty(self, name, default=None): |
280 return self.property_node.GetProperty(name, default) | 291 return self.property_node.GetProperty(name, default) |
281 | 292 |
282 def Traverse(self, data, func): | 293 def Traverse(self, data, func): |
283 func(self, data) | 294 func(self, data) |
284 for child in self.children: | 295 for child in self.children: |
285 child.Traverse(data, func) | 296 child.Traverse(data, func) |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
359 errors += ChildTest() | 370 errors += ChildTest() |
360 | 371 |
361 if errors: | 372 if errors: |
362 ErrOut.Log('IDLNode failed with %d errors.' % errors) | 373 ErrOut.Log('IDLNode failed with %d errors.' % errors) |
363 return -1 | 374 return -1 |
364 return 0 | 375 return 0 |
365 | 376 |
366 if __name__ == '__main__': | 377 if __name__ == '__main__': |
367 sys.exit(Main()) | 378 sys.exit(Main()) |
368 | 379 |
OLD | NEW |