chinwag 0.1.5 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/ext/chinwag/dict.c CHANGED
@@ -1,8 +1,45 @@
1
1
  #include "dict.h"
2
2
 
3
- drow_t open_drow()
3
+ // dictionary row utilities
4
+ cwdrow_t cwdrow_open();
5
+
6
+ cwdrow_t cwdrow_add_word
7
+ (cwdrow_t drow, const char* word);
8
+
9
+ cwdrow_t cwdrow_add_word_strict
10
+ (cwdrow_t drow, const char* word, U32 size);
11
+
12
+ cwdrow_t cwdrow_sort
13
+ (cwdrow_t drow);
14
+
15
+ bool cwdrow_word_blank
16
+ (cwdrow_t drow, U32 i);
17
+
18
+ bool cwdrow_word_present
19
+ (cwdrow_t drow, U32 i);
20
+
21
+ bool cwdrow_exclude
22
+ (cwdrow_t drow, char const* str);
23
+
24
+ bool cwdrow_include
25
+ (cwdrow_t drow, char const* str);
26
+
27
+ void cwdrow_close
28
+ (cwdrow_t drow);
29
+
30
+ void puts_cwdrow
31
+ (cwdrow_t drow);
32
+
33
+ // dictionary utilities
34
+ I32 cwdict_find_row_of_size
35
+ (cwdict_t dict, U32 largest);
36
+
37
+ bool cwdict_blanks
38
+ (cwdict_t dict);
39
+
40
+ cwdrow_t cwdrow_open()
4
41
  {
5
- drow_t d;
42
+ cwdrow_t d;
6
43
 
7
44
  // set default values
8
45
  d.sorted = false;
@@ -14,7 +51,8 @@ drow_t open_drow()
14
51
  return d;
15
52
  }
16
53
 
17
- drow_t add_word_to_drow(drow_t drow, const char* word)
54
+ cwdrow_t cwdrow_add_word
55
+ (cwdrow_t drow, const char* word)
18
56
  {
19
57
  // cache strlen of word
20
58
  U32 len = strlen(word);
@@ -43,17 +81,19 @@ drow_t add_word_to_drow(drow_t drow, const char* word)
43
81
  return drow;
44
82
  }
45
83
 
46
- drow_t add_word_to_drow_limit(drow_t drow, const char* word, U32 size)
84
+ cwdrow_t cwdrow_add_word_strict
85
+ (cwdrow_t drow, const char* word, U32 size)
47
86
  {
48
- if(strlen(word) == size) drow = add_word_to_drow(drow, word);
87
+ if(strlen(word) == size) drow = cwdrow_add_word(drow, word);
49
88
  return drow;
50
89
  }
51
90
 
52
- drow_t bubble_drow(drow_t drow)
91
+ cwdrow_t cwdrow_sort
92
+ (cwdrow_t drow)
53
93
  {
54
94
  for(U32 i = 0; i != drow.count - 1; ++i)
55
95
  {
56
- if(drow_word_blank(drow, i) && drow_word_present(drow, i + 1))
96
+ if(cwdrow_word_blank(drow, i) && cwdrow_word_present(drow, i + 1))
57
97
  {
58
98
  // bubble next one into current one
59
99
  U32 len = strlen(drow.words[i + 1]);
@@ -75,7 +115,8 @@ drow_t bubble_drow(drow_t drow)
75
115
  return drow;
76
116
  }
77
117
 
78
- bool drow_word_blank(drow_t drow, U32 i)
118
+ bool cwdrow_word_blank
119
+ (cwdrow_t drow, U32 i)
79
120
  {
80
121
  if(drow.words[i] == NULL || strlen(drow.words[i]) < 1)
81
122
  {
@@ -85,7 +126,8 @@ bool drow_word_blank(drow_t drow, U32 i)
85
126
  return false;
86
127
  }
87
128
 
88
- bool drow_word_present(drow_t drow, U32 i)
129
+ bool cwdrow_word_present
130
+ (cwdrow_t drow, U32 i)
89
131
  {
90
132
  if(drow.words[i] != NULL && strlen(drow.words[i]) > 0)
91
133
  {
@@ -95,7 +137,8 @@ bool drow_word_present(drow_t drow, U32 i)
95
137
  return false;
96
138
  }
97
139
 
98
- bool drow_exclude(drow_t drow, char const* str)
140
+ bool cwdrow_exclude
141
+ (cwdrow_t drow, char const* str)
99
142
  {
100
143
  for(U32 i = 0; i != drow.count; ++i)
101
144
  {
@@ -105,7 +148,8 @@ bool drow_exclude(drow_t drow, char const* str)
105
148
  return true;
106
149
  }
107
150
 
108
- bool drow_include(drow_t drow, char const* str)
151
+ bool cwdrow_include
152
+ (cwdrow_t drow, char const* str)
109
153
  {
110
154
  for(U32 i = 0; i != drow.count; ++i)
111
155
  {
@@ -115,7 +159,8 @@ bool drow_include(drow_t drow, char const* str)
115
159
  return false;
116
160
  }
117
161
 
118
- char* sample_drow(drow_t drow)
162
+ char* cwdrow_sample
163
+ (cwdrow_t drow)
119
164
  {
120
165
  // immediately fail if empty
121
166
  if(drow.count == 0) return NULL;
@@ -126,7 +171,19 @@ char* sample_drow(drow_t drow)
126
171
  return drow.words[internal];
127
172
  }
128
173
 
129
- void puts_drow(drow_t drow)
174
+ void cwdrow_close
175
+ (cwdrow_t drow)
176
+ {
177
+ for(U32 i = 0; i != drow.count; ++i)
178
+ {
179
+ if(drow.words[i]) free(drow.words[i]);
180
+ }
181
+
182
+ if(drow.words) free(drow.words);
183
+ }
184
+
185
+ void puts_cwdrow
186
+ (cwdrow_t drow)
130
187
  {
131
188
  #ifdef DEBUG
132
189
  fprintf(stdout, "(%d)", drow.count);
@@ -143,19 +200,12 @@ void puts_drow(drow_t drow)
143
200
  fprintf(stdout, "]");
144
201
  }
145
202
 
146
- void close_drow(drow_t drow)
147
- {
148
- for(U32 i = 0; i != drow.count; ++i)
149
- {
150
- if(drow.words[i]) free(drow.words[i]);
151
- }
203
+ I32 cwdict_find_row_of_size
204
+ (cwdict_t dict, U32 largest);
152
205
 
153
- if(drow.words) free(drow.words);
154
- }
155
-
156
- dict_t open_dict()
206
+ cwdict_t cwdict_open()
157
207
  {
158
- dict_t d;
208
+ cwdict_t d;
159
209
 
160
210
  // set default values
161
211
  d.sorted = false;
@@ -166,9 +216,10 @@ dict_t open_dict()
166
216
  return d;
167
217
  }
168
218
 
169
- dict_t open_dict_with_name(const char* name)
219
+ cwdict_t cwdict_open_with_name
220
+ (const char* name)
170
221
  {
171
- dict_t d;
222
+ cwdict_t d;
172
223
 
173
224
  // set default values
174
225
  d.sorted = false;
@@ -182,17 +233,19 @@ dict_t open_dict_with_name(const char* name)
182
233
  return d;
183
234
  }
184
235
 
185
- dict_t open_dict_with_tokens(const char* const buffer, const char* delimiters)
236
+ cwdict_t cwdict_open_with_tokens
237
+ (const char* const buffer, const char* delimiters)
186
238
  {
187
- dict_t d = tokenize(buffer, delimiters);
239
+ cwdict_t d = tokenize(buffer, delimiters);
188
240
  d.name = NULL;
189
241
 
190
242
  return d;
191
243
  }
192
244
 
193
- dict_t open_dict_with_name_and_tokens(const char* name, const char* const buffer, const char* delimiters)
245
+ cwdict_t cwdict_open_with_name_and_tokens
246
+ (const char* name, const char* const buffer, const char* delimiters)
194
247
  {
195
- dict_t d = tokenize(buffer, delimiters);
248
+ cwdict_t d = tokenize(buffer, delimiters);
196
249
  d.name = NULL;
197
250
 
198
251
  d.name = (char*)malloc((strlen(name) + 1) * sizeof(char));
@@ -201,44 +254,49 @@ dict_t open_dict_with_name_and_tokens(const char* name, const char* const buffer
201
254
  return d;
202
255
  }
203
256
 
204
- dict_t add_drow_to_dict(dict_t dict, drow_t drow)
257
+ cwdict_t cwdict_add_row
258
+ (cwdict_t dict, cwdrow_t drow)
205
259
  {
206
260
  ++dict.count;
207
261
 
208
- dict.drows = (drow_t*)realloc(dict.drows, sizeof(drow_t) * dict.count);
262
+ dict.drows = (cwdrow_t*)realloc(dict.drows, sizeof(cwdrow_t) * dict.count);
209
263
  dict.drows[dict.count - 1] = drow;
210
264
 
211
265
  return dict;
212
266
  }
213
267
 
214
- dict_t add_drow_to_dict_strict(dict_t dict, drow_t drow, U32 size)
268
+ cwdict_t cwdict_add_row_strict
269
+ (cwdict_t dict, cwdrow_t drow, U32 size)
215
270
  {
216
- if(drow.count >= size) dict = add_drow_to_dict(dict, drow);
271
+ if(drow.count >= size) dict = cwdict_add_row(dict, drow);
217
272
  return dict;
218
273
  }
219
274
 
220
275
 
221
- dict_t place_word_in_dict(dict_t dict, const char* word)
276
+ cwdict_t cwdict_place_word
277
+ (cwdict_t dict, const char* word)
222
278
  {
223
- drow_t drow = open_drow();
279
+ cwdrow_t drow = cwdrow_open();
224
280
 
225
- drow = add_word_to_drow(drow, word);
226
- dict = add_drow_to_dict(dict, drow);
281
+ drow = cwdrow_add_word(drow, word);
282
+ dict = cwdict_add_row(dict, drow);
227
283
 
228
284
  return dict;
229
285
  }
230
286
 
231
- dict_t place_words_in_dict(dict_t dict, const char* const* words, U32 s)
287
+ cwdict_t cwdict_place_words
288
+ (cwdict_t dict, const char* const* words, U32 s)
232
289
  {
233
290
  for(U32 i = 0; i != s; ++i)
234
291
  {
235
- dict = place_word_in_dict(dict, words[i]);
292
+ dict = cwdict_place_word(dict, words[i]);
236
293
  }
237
294
 
238
295
  return dict;
239
296
  }
240
297
 
241
- dict_t place_word_in_dict_strict(dict_t dict, const char* word)
298
+ cwdict_t cwdict_place_word_strict
299
+ (cwdict_t dict, const char* word)
242
300
  {
243
301
  bool inserted = false;
244
302
  U32 len = strlen(word);
@@ -247,35 +305,36 @@ dict_t place_word_in_dict_strict(dict_t dict, const char* word)
247
305
  {
248
306
  if(dict.drows[i].largest == len)
249
307
  {
250
- dict.drows[i] = add_word_to_drow(dict.drows[i], word);
308
+ dict.drows[i] = cwdrow_add_word(dict.drows[i], word);
251
309
  inserted = true;
252
310
  }
253
311
  }
254
312
 
255
- if(inserted == false) dict = place_word_in_dict(dict, word);
313
+ if(inserted == false) dict = cwdict_place_word(dict, word);
256
314
 
257
315
  return dict;
258
316
  }
259
317
 
260
- dict_t place_words_in_dict_strict(dict_t dict, const char* const* words,
261
- U32 s)
318
+ cwdict_t cwdict_place_words_strict
319
+ (cwdict_t dict, const char* const* words, U32 s)
262
320
  {
263
321
  for(U32 i = 0; i != s; ++i)
264
322
  {
265
- dict = place_word_in_dict_strict(dict, words[i]);
323
+ dict = cwdict_place_word_strict(dict, words[i]);
266
324
  }
267
325
 
268
326
  return dict;
269
327
  }
270
328
 
271
- dict_t bubble_dict(dict_t dict)
329
+ cwdict_t cwdict_sort
330
+ (cwdict_t dict)
272
331
  {
273
- drow_t temp;
332
+ cwdrow_t temp;
274
333
 
275
334
  // sort individual drows' contents
276
335
  for(U32 i = 0; i != dict.count; ++i)
277
336
  {
278
- dict.drows[i] = bubble_drow(dict.drows[i]);
337
+ dict.drows[i] = cwdrow_sort(dict.drows[i]);
279
338
  }
280
339
 
281
340
  // sort individual drows within dict
@@ -297,7 +356,8 @@ dict_t bubble_dict(dict_t dict)
297
356
  return dict;
298
357
  }
299
358
 
300
- dict_t prune_dict(dict_t dict, bool sorted)
359
+ cwdict_t cwdict_prune
360
+ (cwdict_t dict, bool sorted)
301
361
  {
302
362
  U32 len = 0, size = 0, null_count = 0;
303
363
  char* against = NULL;
@@ -322,7 +382,7 @@ dict_t prune_dict(dict_t dict, bool sorted)
322
382
  }
323
383
 
324
384
  // sort drows within dict
325
- if(sorted) dict = bubble_dict(dict);
385
+ if(sorted) dict = cwdict_sort(dict);
326
386
 
327
387
  // resize individual drows within dict
328
388
  for(U32 i = 0; i != dict.count; ++i)
@@ -344,12 +404,19 @@ dict_t prune_dict(dict_t dict, bool sorted)
344
404
  }
345
405
  }
346
406
 
347
- if(dict_any_blanks(dict)) dict = prune_dict(dict, sorted);
407
+ if(cwdict_blanks(dict)) dict = cwdict_prune(dict, sorted);
348
408
 
349
409
  return dict;
350
410
  }
351
411
 
352
- dict_t map_dict(dict_t dict, char* (*f)(char*))
412
+ cwdict_t cwdict_clean
413
+ (cwdict_t dict)
414
+ {
415
+ return cwdict_prune(dict, true);
416
+ }
417
+
418
+ cwdict_t cwdict_map
419
+ (cwdict_t dict, char* (*f)(char*))
353
420
  {
354
421
  U32 len = 0;
355
422
  char* temp = (char*)malloc(sizeof(char) * SMALL_BUFFER);
@@ -376,18 +443,19 @@ dict_t map_dict(dict_t dict, char* (*f)(char*))
376
443
  return dict;
377
444
  }
378
445
 
379
- dict_t deep_copy_dict(dict_t dict)
446
+ cwdict_t cwdict_clone
447
+ (cwdict_t dict)
380
448
  {
381
- dict_t new;
449
+ cwdict_t new;
382
450
 
383
- if(dict.name) new = open_dict_with_name(dict.name);
384
- else new = open_dict();
451
+ if(dict.name) new = cwdict_open_with_name(dict.name);
452
+ else new = cwdict_open();
385
453
 
386
454
  for(U32 i = 0; i != dict.count; ++i)
387
455
  {
388
456
  for(U32 j = 0; j != dict.drows[i].count; ++j)
389
457
  {
390
- new = place_word_in_dict_strict(new, dict.drows[i].words[j]);
458
+ new = cwdict_place_word_strict(new, dict.drows[i].words[j]);
391
459
  }
392
460
  }
393
461
 
@@ -398,12 +466,19 @@ dict_t deep_copy_dict(dict_t dict)
398
466
  new.name[strlen(dict.name)] = '\0';
399
467
  }
400
468
 
401
- if(dict.sorted) new = bubble_dict(new);
469
+ if(dict.sorted) new = cwdict_sort(new);
402
470
 
403
471
  return new;
404
472
  }
405
473
 
406
- bool dict_exclude(dict_t dict, char const* str)
474
+ cwdict_t cwdict_dup
475
+ (cwdict_t dict)
476
+ {
477
+ return cwdict_clone(dict);
478
+ }
479
+
480
+ bool cwdict_exclude
481
+ (cwdict_t dict, char const* str)
407
482
  {
408
483
  for(U32 i = 0; i != dict.count; ++i)
409
484
  {
@@ -416,7 +491,8 @@ bool dict_exclude(dict_t dict, char const* str)
416
491
  return true;
417
492
  }
418
493
 
419
- bool dict_include(dict_t dict, char const* str)
494
+ bool cwdict_include
495
+ (cwdict_t dict, char const* str)
420
496
  {
421
497
  for(U32 i = 0; i != dict.count; ++i)
422
498
  {
@@ -429,20 +505,22 @@ bool dict_include(dict_t dict, char const* str)
429
505
  return false;
430
506
  }
431
507
 
432
- bool dict_any_blanks(dict_t dict)
508
+ bool cwdict_blanks
509
+ (cwdict_t dict)
433
510
  {
434
511
  for(U32 i = 0; i != dict.count; ++i)
435
512
  {
436
513
  for(U32 j = 0; j != dict.drows[i].count; ++j)
437
514
  {
438
- if(drow_word_blank(dict.drows[i], j)) return true;
515
+ if(cwdrow_word_blank(dict.drows[i], j)) return true;
439
516
  }
440
517
  }
441
518
 
442
519
  return false;
443
520
  }
444
521
 
445
- bool dict_valid(dict_t dict, char** error)
522
+ bool cwdict_valid
523
+ (cwdict_t dict, char** error)
446
524
  {
447
525
  U32 count = 0;
448
526
 
@@ -455,27 +533,31 @@ bool dict_valid(dict_t dict, char** error)
455
533
  }
456
534
  }
457
535
 
458
- if(count < MIN_DICT_SIZE)
536
+ if(error)
459
537
  {
460
- *error = (char*)malloc(SMALL_BUFFER);
461
- sprintf(*error, "too few acceptable entries (%d of %d)",count,
462
- MIN_DICT_SIZE);
538
+ if(count < MIN_DICT_SIZE)
539
+ {
540
+ *error = (char*)malloc(SMALL_BUFFER);
541
+ sprintf(*error, "too few acceptable entries (%d of %d)",count,
542
+ MIN_DICT_SIZE);
463
543
 
464
- return false;
465
- }
466
-
467
- if(dict.sorted == false)
468
- {
469
- *error = (char*)malloc(SMALL_BUFFER);
470
- sprintf(*error, "dictionary couldn't be sorted");
544
+ return false;
545
+ }
546
+
547
+ if(dict.sorted == false)
548
+ {
549
+ *error = (char*)malloc(SMALL_BUFFER);
550
+ sprintf(*error, "dictionary couldn't be sorted");
471
551
 
472
- return false;
552
+ return false;
553
+ }
473
554
  }
474
555
 
475
556
  return true;
476
557
  }
477
558
 
478
- bool dict_equal(dict_t dict, dict_t against)
559
+ bool cwdict_equal
560
+ (cwdict_t dict, cwdict_t against)
479
561
  {
480
562
  if(dict.count != against.count) return false;
481
563
 
@@ -493,7 +575,8 @@ bool dict_equal(dict_t dict, dict_t against)
493
575
  return true;
494
576
  }
495
577
 
496
- bool dict_not_equal(dict_t dict, dict_t against)
578
+ bool cwdict_inequal
579
+ (cwdict_t dict, cwdict_t against)
497
580
  {
498
581
  if(dict.count != against.count) return true;
499
582
 
@@ -511,10 +594,11 @@ bool dict_not_equal(dict_t dict, dict_t against)
511
594
  return false;
512
595
  }
513
596
 
514
- I32 find_drow_of_size_in_dict(dict_t dict, U32 largest)
597
+ I32 cwdict_find_row_of_size
598
+ (cwdict_t dict, U32 largest)
515
599
  {
516
600
  // sort dict if necessary
517
- if(dict.sorted == false) dict = prune_dict(dict, true);
601
+ if(dict.sorted == false) dict = cwdict_prune(dict, true);
518
602
 
519
603
  for(U32 i = 0; i != dict.count; ++i)
520
604
  {
@@ -524,7 +608,8 @@ I32 find_drow_of_size_in_dict(dict_t dict, U32 largest)
524
608
  return -1;
525
609
  }
526
610
 
527
- U32 total_dict(dict_t dict)
611
+ U32 cwdict_length
612
+ (cwdict_t dict)
528
613
  {
529
614
  U32 total = 0;
530
615
 
@@ -533,7 +618,20 @@ U32 total_dict(dict_t dict)
533
618
  return total;
534
619
  }
535
620
 
536
- U32 dict_largest(dict_t dict)
621
+ U32 cwdict_size
622
+ (cwdict_t dict)
623
+ {
624
+ return cwdict_length(dict);
625
+ }
626
+
627
+ U32 cwdict_count
628
+ (cwdict_t dict)
629
+ {
630
+ return cwdict_length(dict);
631
+ }
632
+
633
+ U32 cwdict_largest
634
+ (cwdict_t dict)
537
635
  {
538
636
  U32 largest = 0;
539
637
 
@@ -546,7 +644,8 @@ U32 dict_largest(dict_t dict)
546
644
  return largest;
547
645
  }
548
646
 
549
- char* sample_dict(dict_t dict)
647
+ char* cwdict_sample
648
+ (cwdict_t dict)
550
649
  {
551
650
  // immediately fail if empty
552
651
  if(dict.count == 0) return NULL;
@@ -554,10 +653,11 @@ char* sample_dict(dict_t dict)
554
653
  U32 max = (dict.count == 1 ? 0 : dict.count - 1);
555
654
  U32 external = (max == 0 ? 0 : motherr(0, max));
556
655
 
557
- return sample_drow(dict.drows[external]);
656
+ return cwdrow_sample(dict.drows[external]);
558
657
  }
559
658
 
560
- char* join_dict(dict_t dict, char const* delimiter)
659
+ char* cwdict_join
660
+ (cwdict_t dict, char const* delimiter)
561
661
  {
562
662
  U32 len = 0, del_len = strlen(delimiter);
563
663
  char* string = NULL; char* temp = NULL;
@@ -595,13 +695,26 @@ char* join_dict(dict_t dict, char const* delimiter)
595
695
  return string;
596
696
  }
597
697
 
598
- void puts_dict(dict_t dict)
698
+ cwdict_t cwdict_close
699
+ (cwdict_t dict)
700
+ {
701
+ for(U32 i = 0; i != dict.count; ++i) cwdrow_close(dict.drows[i]);
702
+ if(dict.drows) { free(dict.drows); dict.drows = NULL; }
703
+
704
+ dict.count = 0;
705
+ if(dict.name) { free(dict.name); dict.name = NULL; }
706
+
707
+ return cwdict_open();
708
+ }
709
+
710
+ void puts_cwdict
711
+ (cwdict_t dict)
599
712
  {
600
713
  fprintf(stdout, "[");
601
714
 
602
715
  for(U32 i = 0; i != dict.count; ++i)
603
716
  {
604
- puts_drow(dict.drows[i]);
717
+ puts_cwdrow(dict.drows[i]);
605
718
 
606
719
  if(i < dict.count - 1) fprintf(stdout, ",");
607
720
 
@@ -613,18 +726,8 @@ void puts_dict(dict_t dict)
613
726
  fprintf(stdout, "]");
614
727
  }
615
728
 
616
- dict_t close_dict(dict_t dict)
617
- {
618
- for(U32 i = 0; i != dict.count; ++i) close_drow(dict.drows[i]);
619
- if(dict.drows) { free(dict.drows); dict.drows = NULL; }
620
-
621
- dict.count = 0;
622
- if(dict.name) { free(dict.name); dict.name = NULL; }
623
-
624
- return open_dict();
625
- }
626
-
627
- void validate_dict(dict_t dict, char const* function_name)
729
+ void validate_cwdict
730
+ (cwdict_t dict, char const* function_name)
628
731
  {
629
732
  U32 count = 0;
630
733
 
@@ -656,11 +759,12 @@ void validate_dict(dict_t dict, char const* function_name)
656
759
  }
657
760
  }
658
761
 
659
- dict_t split(const char* buffer, const char* delimiters)
762
+ cwdict_t split_into_cwdict
763
+ (const char* buffer, const char* delimiters)
660
764
  {
661
765
  char* tok;
662
766
  char* mutable_buffer = (char*)malloc(strlen(buffer) + 1 * sizeof(char));
663
- dict_t dict = open_dict();
767
+ cwdict_t dict = cwdict_open();
664
768
 
665
769
  // get mutable copy of buffer; a bit slower, but allows for const-ness
666
770
  strcpy(mutable_buffer, buffer);
@@ -671,7 +775,7 @@ dict_t split(const char* buffer, const char* delimiters)
671
775
  while(tok != NULL)
672
776
  {
673
777
  // add word to dict
674
- dict = place_word_in_dict(dict, tok);
778
+ dict = cwdict_place_word(dict, tok);
675
779
 
676
780
  // get new tok (if any)
677
781
  tok = strtok(NULL, delimiters);
@@ -686,20 +790,20 @@ dict_t split(const char* buffer, const char* delimiters)
686
790
  #ifdef DICTMAIN
687
791
  int main(int argc, const char *argv[])
688
792
  {
689
- dict_t dict = open_dict();
793
+ cwdict_t dict = cwdict_open();
690
794
  // const char * const words[]= { "the", "quick", "brown", "fox", "jumps",
691
795
  // "over", "the", "lazy", "dog", "dawg" };
692
796
 
693
- dict = place_words_in_dict_strict(dict, argv, argc);
694
- dict = prune_dict(dict, true);
797
+ dict = cwdict_place_words_strict(dict, argv, argc);
798
+ dict = cwdict_prune(dict, true);
695
799
 
696
800
  #ifdef DEBUG
697
801
  fprintf(stdout, "dict.count : %d\n", dict.count);
698
802
  #endif
699
803
 
700
- puts_dict(dict); fprintf(stdout, "\n");
804
+ puts_cwdict(dict); fprintf(stdout, "\n");
701
805
 
702
- close_dict(dict);
806
+ cwdict_close(dict);
703
807
 
704
808
  return 0;
705
809
  }