IDL compiler: Enum types for methods

Largely same as setters, though behavior is different, per spec:

Doc:
http://www.w3.org/TR/WebIDL/#idl-enums
In the ECMAScript binding, assignment of an invalid string value to an attribute is ignored, while passing such a value as an operation argument results in an exception being thrown.

BUG=239771
NOTRY=true

Review URL: https://codereview.chromium.org/51853004

git-svn-id: svn://svn.chromium.org/blink/trunk@160896 bbb929c8-8fbe-4397-9dbb-9b2b20218538