ts-simple-ast
Version:
TypeScript compiler wrapper for AST navigation and code generation.
23 lines (22 loc) • 1.03 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var utils_1 = require("./../../utils");
var FormattingKind_1 = require("./FormattingKind");
function getStatementedNodeChildFormatting(parent, member) {
if (hasBody(member))
return FormattingKind_1.FormattingKind.Blankline;
return FormattingKind_1.FormattingKind.Newline;
}
exports.getStatementedNodeChildFormatting = getStatementedNodeChildFormatting;
function getClausedNodeChildFormatting(parent, member) {
return FormattingKind_1.FormattingKind.Newline;
}
exports.getClausedNodeChildFormatting = getClausedNodeChildFormatting;
function hasBody(node) {
if (utils_1.TypeGuards.isBodyableNode(node) && node.getBody() != null)
return true;
if (utils_1.TypeGuards.isBodiedNode(node))
return true;
return utils_1.TypeGuards.isInterfaceDeclaration(node) || utils_1.TypeGuards.isClassDeclaration(node) || utils_1.TypeGuards.isEnumDeclaration(node) ||
utils_1.TypeGuards.isEnumDeclaration(node);
}