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}
**/
@ -79,6 +80,7 @@
}
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}
**/
@ -202,6 +201,7 @@ var StatusEnum = function StatusEnum() {
}
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}
**/
@ -204,6 +203,7 @@ var StatusEnum = function StatusEnum() {
}
Pet.prototype.toJson = function() {
return JSON.stringify(this);
}

View File

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

View File

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

View File

@ -50,6 +50,7 @@
}
/**
* @return {Integer}
**/
@ -79,6 +80,7 @@
}
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}
**/
@ -202,6 +201,7 @@ var StatusEnum = function StatusEnum() {
}
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}
**/
@ -204,6 +203,7 @@ var StatusEnum = function StatusEnum() {
}
Pet.prototype.toJson = function() {
return JSON.stringify(this);
}

View File

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

View File

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