FrontISTR  5.9.0
Large-scale structural analysis program with finit element method
CNFMessage.cpp
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2019 FrontISTR Commons
3  * This software is released under the MIT License, see LICENSE.txt
4  *****************************************************************************/
5 /*
6  CNFMessage ver.1.0
7 */
8 
9 #include <stdio.h>
10 #include "CNFMessage.h"
11 
12 static char ERROR_MSG[][80] = {
13  "No error", "Unknown error", "Cannot open NEU file",
14  "Read data error", "Data line required", "Data block required",
15  "Invalid token", "Item required", "A record is required"};
16 
17 static char WARNING_MSG[][80] = {"Non supported data block"};
18 
19 char CNFMessage::msg[256] = "";
20 
21 const char *CNFError::Msg() {
22  size_t len = snprintf(msg, sizeof(msg), "##Error");
23 
24  if (line >= 0) {
25  len += snprintf(msg + len, sizeof(msg) - len, "(line:%d", line);
26 
27  if (column > 0) {
28  len += snprintf(msg + len, sizeof(msg) - len, ",col:%d", column);
29  }
30 
31  len += snprintf(msg + len, sizeof(msg) - len, ")");
32  }
33 
34  snprintf(msg + len, sizeof(msg) - len, ": %s%s", ERROR_MSG[no], option_msg);
35  return msg;
36 }
37 
38 const char *CNFWarning::Msg() {
39  size_t len = snprintf(msg, sizeof(msg), "##Warning");
40 
41  if (line >= 0) {
42  len += snprintf(msg + len, sizeof(msg) - len, "(line:%d", line);
43 
44  if (column > 0) {
45  len += snprintf(msg + len, sizeof(msg) - len, ",col:%d", column);
46  }
47 
48  len += snprintf(msg + len, sizeof(msg) - len, ")");
49  }
50 
51  snprintf(msg + len, sizeof(msg) - len, ": %s%s", WARNING_MSG[no], option_msg);
52  return msg;
53 }
const char ERROR_MSG[][80]
Definition: CConvMessage.cpp:9
virtual const char * Msg()
Definition: CNFMessage.cpp:21
int column
Definition: CNFMessage.h:40
static char msg[256]
Definition: CNFMessage.h:35
char option_msg[256]
Definition: CNFMessage.h:41
virtual const char * Msg()
Definition: CNFMessage.cpp:38