/* * Copyright 2018 Google Inc. * * Use of this source code is governed by a BSD-style license that can * be found in the LICENSE file. * */ #include #include // // // #include "gen.h" // // // #define HSG_INDENT 2 // // // struct hsg_target_state { FILE * txt; }; // // // void hsg_target_indent(struct hsg_target * const target, uint32_t const depth) { fprintf(target->state->txt, "%*s", depth*HSG_INDENT,""); } void hsg_target_debug(struct hsg_target * const target, struct hsg_config const * const config, struct hsg_merge const * const merge, struct hsg_op const * const ops, uint32_t const depth) { if (ops->type == HSG_OP_TYPE_TARGET_BEGIN) { target->state = malloc(sizeof(*target->state)); target->state->txt = fopen("hs_debug.txt","wb"); } hsg_target_indent(target,depth); fprintf(target->state->txt, "%s\n", hsg_op_type_string[ops->type]); if (ops->type == HSG_OP_TYPE_TARGET_END) { fclose(target->state->txt); free(target->state); } } // // //