summaryrefslogtreecommitdiff
path: root/gi/pyp-topics/src/contexts_lexer.h
blob: f9a1b21cb733808378af0ea9e007d8836ece1b8f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef _CONTEXTS_LEXER_H_
#define _CONTEXTS_LEXER_H_ 

#include <iostream>
#include <vector>
#include <string>

#include "../../../decoder/dict.h" 

struct ContextsLexer {
  typedef std::vector<std::string> Context;
  struct PhraseContextsType {
    std::string          phrase;
    std::vector<Context> contexts;
    std::vector<int>     counts;
  };

  typedef void (*ContextsCallback)(const PhraseContextsType& new_contexts, void* extra);
  static void ReadContexts(std::istream* in, ContextsCallback func, void* extra);
};

#endif