File: message_node.cc

package info (click to toggle)
jlint 3.0-4.2
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 776 kB
  • ctags: 662
  • sloc: cpp: 5,837; ansic: 1,496; makefile: 299; perl: 93; sh: 49
file content (23 lines) | stat: -rw-r--r-- 611 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "message_node.hh"

message_node* message_node::hash_table[1023];

bool message_node::find(char* msg_text) 
{
    unsigned h = string_hash_function((byte*)msg_text) % items(hash_table);
    for (message_node* msg = hash_table[h]; msg != NULL; msg = msg->next) { 
      if (strcmp(msg->text, msg_text) == 0) { 
        return true;
      }
    }
    return false;
}

void message_node::add_to_hash(char* msg_text)
{
    unsigned h = string_hash_function((byte*)msg_text) % items(hash_table);
    message_node* msg = new message_node(msg_text);
    msg->next = hash_table[h];
    hash_table[h] = msg;
}