all files / dist/writers/ EnumWriter.js

100% Statements 25/25
100% Branches 2/2
100% Functions 7/7
100% Lines 25/25
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36  16× 16× 16× 16× 16× 16×   11× 11× 11× 11× 11× 11× 11× 11×       11× 11×            
"use strict";
var EnumWriter = (function () {
    function EnumWriter(writer, baseDefinitionWriter, documentationedWriter, exportableWriter, ambientableWriter, enumMemberWriter) {
        this.writer = writer;
        this.baseDefinitionWriter = baseDefinitionWriter;
        this.documentationedWriter = documentationedWriter;
        this.exportableWriter = exportableWriter;
        this.ambientableWriter = ambientableWriter;
        this.enumMemberWriter = enumMemberWriter;
    }
    EnumWriter.prototype.write = function (def, flags) {
        var _this = this;
        this.baseDefinitionWriter.writeWrap(def, function () {
            _this.documentationedWriter.write(def);
            _this.exportableWriter.writeExportKeyword(def, flags);
            _this.ambientableWriter.writeDeclareKeyword(def);
            _this.writer.conditionalWrite(def.isConst, "const ");
            _this.writer.write("enum " + def.name).block(function () {
                _this.writeMembers(def.members);
            });
        });
    };
    EnumWriter.prototype.writeMembers = function (members) {
        var _this = this;
        members.forEach(function (member, i) {
            _this.enumMemberWriter.write(member);
            if (i !== members.length - 1)
                _this.writer.write(",").newLine();
        });
    };
    return EnumWriter;
}());
exports.EnumWriter = EnumWriter;
 
//# sourceMappingURL=EnumWriter.js.map