// file: lxn_debug_0.cc
//
 
// isip include files
//
#include "lex_node.h"
#include "lex_node_constants.h"

// method: debug_cc
//
// arguments:
//  FILE* fp: (input) file pointer used for output
//  char_1* message: (input) a message concatenated to each debug message
//
// return: a logical_1 value indicating status
//
// this method displays the values of all internal data
//
logical_1 Lex_node::debug_cc(FILE* fp_a, char_1* message_a) {

  // dump the phone information
  //
  fprintf(fp_a, "%s::%s: phone_d = %ld\n", LXN_CLASS_NAME, message_a,
	  phone_d);

  // dump the score information
  //
  fprintf(fp_a, "%s::%s: score_d = %f\n", LXN_CLASS_NAME, message_a,
	  score_d);

  // dump the word_end information
  //
  fprintf(fp_a, "%s::%s: word_end_d = %c\n", LXN_CLASS_NAME, message_a,
	  word_end_d);

  // dump the type information
  //
  fprintf(fp_a, "%s::%s: type_d = %c\n", LXN_CLASS_NAME, message_a,
	  type_d);

  // dump the word list
  //
  fprintf(fp_a, "%s::%s: words_d = %p\n\n", LXN_CLASS_NAME, message_a,
	  words_d);
  if (words_d != (Link_list*)NULL) {
    words_d->debug_cc(fp_a, message_a);
  }
  
  // dump the child nodes list
  //
  fprintf(fp_a, "%s::%s: child_d = %p\n\n", LXN_CLASS_NAME, message_a,
	  child_d);
  if (child_d != (Link_list*)NULL) {
    child_d->debug_cc(fp_a, message_a);
  }

  // exit gracefully
  //
  return ISIP_TRUE;
}
