Use objects for enums, not constructor functions

Fixes #2101.
This commit is contained in:
delenius 2016-02-11 09:02:45 -08:00
parent 847a8e1f3d
commit 86154f87c3
11 changed files with 39 additions and 29 deletions

View File

@ -6,14 +6,12 @@ if ( typeof define === "function" && define.amd ) {
});
}
var {{datatypeWithEnum}} = function {{datatypeWithEnum}}() {
var self = this;
var {{datatypeWithEnum}} = {
{{#allowableValues}}{{#enumVars}}
/**
* @const
*/
self.{{name}} = "{{value}}"{{^-last}},
{{/-last}}{{#-last}};{{/-last}}{{/enumVars}}{{/allowableValues}}
{{name}}: "{{value}}"{{^-last}},
{{/-last}}{{/enumVars}}{{/allowableValues}}
}

View File

@ -50,6 +50,7 @@
}
/**
* @return {Integer}
**/
@ -78,6 +79,7 @@
this['name'] = name;
}
Category.prototype.toJson = function() {
return JSON.stringify(this);

View File

@ -24,24 +24,22 @@ if ( typeof define === "function" && define.amd ) {
});
}
var StatusEnum = function StatusEnum() {
var self = this;
var StatusEnum = {
/**
* @const
*/
self.PLACED = "placed",
PLACED: "placed",
/**
* @const
*/
self.APPROVED = "approved",
APPROVED: "approved",
/**
* @const
*/
self.DELIVERED = "delivered";
DELIVERED: "delivered"
}
@ -115,6 +113,7 @@ var StatusEnum = function StatusEnum() {
}
/**
* @return {Integer}
**/
@ -201,6 +200,7 @@ var StatusEnum = function StatusEnum() {
this['complete'] = complete;
}
Order.prototype.toJson = function() {
return JSON.stringify(this);

View File

@ -24,24 +24,22 @@ if ( typeof define === "function" && define.amd ) {
});
}
var StatusEnum = function StatusEnum() {
var self = this;
var StatusEnum = {
/**
* @const
*/
self.AVAILABLE = "available",
AVAILABLE: "available",
/**
* @const
*/
self.PENDING = "pending",
PENDING: "pending",
/**
* @const
*/
self.SOLD = "sold";
SOLD: "sold"
}
@ -117,6 +115,7 @@ var StatusEnum = function StatusEnum() {
}
/**
* @return {Integer}
**/
@ -203,6 +202,7 @@ var StatusEnum = function StatusEnum() {
this['status'] = status;
}
Pet.prototype.toJson = function() {
return JSON.stringify(this);

View File

@ -50,6 +50,7 @@
}
/**
* @return {Integer}
**/
@ -78,6 +79,7 @@
this['name'] = name;
}
Tag.prototype.toJson = function() {
return JSON.stringify(this);

View File

@ -105,6 +105,7 @@
}
/**
* @return {Integer}
**/
@ -219,6 +220,7 @@
this['userStatus'] = userStatus;
}
User.prototype.toJson = function() {
return JSON.stringify(this);

View File

@ -50,6 +50,7 @@
}
/**
* @return {Integer}
**/
@ -78,6 +79,7 @@
this['name'] = name;
}
Category.prototype.toJson = function() {
return JSON.stringify(this);

View File

@ -24,24 +24,22 @@ if ( typeof define === "function" && define.amd ) {
});
}
var StatusEnum = function StatusEnum() {
var self = this;
var StatusEnum = {
/**
* @const
*/
self.PLACED = "placed",
PLACED: "placed",
/**
* @const
*/
self.APPROVED = "approved",
APPROVED: "approved",
/**
* @const
*/
self.DELIVERED = "delivered";
DELIVERED: "delivered"
}
@ -115,6 +113,7 @@ var StatusEnum = function StatusEnum() {
}
/**
* @return {Integer}
**/
@ -201,6 +200,7 @@ var StatusEnum = function StatusEnum() {
this['complete'] = complete;
}
Order.prototype.toJson = function() {
return JSON.stringify(this);

View File

@ -24,24 +24,22 @@ if ( typeof define === "function" && define.amd ) {
});
}
var StatusEnum = function StatusEnum() {
var self = this;
var StatusEnum = {
/**
* @const
*/
self.AVAILABLE = "available",
AVAILABLE: "available",
/**
* @const
*/
self.PENDING = "pending",
PENDING: "pending",
/**
* @const
*/
self.SOLD = "sold";
SOLD: "sold"
}
@ -117,6 +115,7 @@ var StatusEnum = function StatusEnum() {
}
/**
* @return {Integer}
**/
@ -203,6 +202,7 @@ var StatusEnum = function StatusEnum() {
this['status'] = status;
}
Pet.prototype.toJson = function() {
return JSON.stringify(this);

View File

@ -50,6 +50,7 @@
}
/**
* @return {Integer}
**/
@ -78,6 +79,7 @@
this['name'] = name;
}
Tag.prototype.toJson = function() {
return JSON.stringify(this);

View File

@ -105,6 +105,7 @@
}
/**
* @return {Integer}
**/
@ -219,6 +220,7 @@
this['userStatus'] = userStatus;
}
User.prototype.toJson = function() {
return JSON.stringify(this);