UNPKG

tcg

Version:
72 lines (68 loc) 1.54 kB
/** * Created by randy on 2016/6/10. */ 'use strict'; module.exports = function() { }; module.exports.prototype.resolveType = function(t) { switch(t) { case 'uint8': case 'uint16': case 'uint32': case 'uint64': case 'int8': case 'int16': case 'int32': case 'int64': return t + '_t'; case 'bool': case 'char': case 'double': case 'float': case 'bool': return t; default: return t; } }; module.exports.prototype.getType = function(type) { switch(type.type) { case "typedef": return this.resolveType(type.refer); case "enum": case "struct": case "union": return type.refer + '_t'; default: return this.resolveType(type.type); } }; module.exports.prototype.getValue = function(value) { switch(value.type) { case 'refer': case 'string': case 'double': case 'bool': case 'char': return value.value; //这两个类型应该按照format指定的格式输出 case 'int64': case 'uint64': return value.value; } }; module.exports.prototype.getFileTag = function(file) { var up = file.toUpperCase(); var tag = ""; for(var i = 0; i < up.length; ++i) { if ((up[i] >= 'A') && (up[i] <= 'Z')) { tag += up[i]; } else { tag += '_'; } } return tag; }