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

Unified Diff: Source/bindings/dart/scripts/dart_utilities.py

Issue 906343002: Added enum checks since enums are now supported in the IDL (Closed) Base URL: svn://svn.chromium.org/blink/branches/dart/dartium
Patch Set: Created 5 years, 10 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: Source/bindings/dart/scripts/dart_utilities.py
diff --git a/Source/bindings/dart/scripts/dart_utilities.py b/Source/bindings/dart/scripts/dart_utilities.py
index 3bd0554d07418fba94de8f308a57f28e37fc948e..c9f4fa58a5245edbb4130882e999d6f61c249ebb 100644
--- a/Source/bindings/dart/scripts/dart_utilities.py
+++ b/Source/bindings/dart/scripts/dart_utilities.py
@@ -44,6 +44,14 @@ import v8_types # Required
import v8_utilities
+def _enum_validation_expression(idl_type):
+ # FIXME: Add IdlEnumType, move property to derived type, and remove this check
+ if not idl_type.is_enum:
+ return None
+ return ' || '.join(['((String){param_name}) == "%s"' % enum_value
+ for enum_value in idl_type.enum_values])
+
+
def _scoped_name(interface, definition, base_name):
# partial interfaces are implemented as separate classes, with their members
# implemented as static member functions
@@ -184,7 +192,7 @@ DartUtilities.conditional_string = v8_utilities.conditional_string
DartUtilities.cpp_name = v8_utilities.cpp_name
DartUtilities.deprecate_as = _deprecate_as
DartUtilities.extended_attribute_value_contains = v8_utilities.extended_attribute_value_contains
-DartUtilities.enum_validation_expression = v8_utilities.enum_validation_expression
+DartUtilities.enum_validation_expression = _enum_validation_expression
DartUtilities.gc_type = v8_utilities.gc_type
DartUtilities.generate_native_entry = _generate_native_entry
DartUtilities.has_extended_attribute = v8_utilities.has_extended_attribute
« no previous file with comments | « Source/bindings/dart/scripts/dart_types.py ('k') | Source/bindings/dart/scripts/templates/methods_cpp.template » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698