/// <summary>
 /// Creates an instance.
 /// </summary>
 /// <param name="tagger">A tagger that this instnace peeps in.</param>
 /// <remarks>
 /// It is usually easier to use <see cref="Hack.GetDictionaries{TNode}(MeCabTaggerBase{TNode})"/> than this constructor.
 /// </remarks>
 public DictionaryBundle(MeCabTaggerBase <TNode> tagger)
 {
     NodeAllocator = Hack.GetFieldValue(tagger, "nodeAllocator") as Func <TNode>;
     Viterbi       = Hack.GetFieldValue(tagger, "viterbi") as Viterbi <TNode>;
     Connector     = Hack.GetFieldValue(Viterbi, "connector") as Connector <TNode>;
     Tokenizer     = Hack.GetFieldValue(Viterbi, "tokenizer") as Tokenizer <TNode>;
     Dictionaries  = Hack.GetFieldValue(Tokenizer, "dic") as MeCabDictionary[];
 }
Esempio n. 2
0
 /// <summary>
 /// Creates an instance of dictionary bundle upon a tagger.
 /// </summary>
 /// <typeparam name="TNode">The type of nodes returned by the tagger that the dictionary bundle is built upon.</typeparam>
 /// <param name="tagger">A tagger instance.</param>
 /// <returns></returns>
 public static DictionaryBundle <TNode> GetDictionaries <TNode>(MeCabTaggerBase <TNode> tagger) where TNode : MeCabNodeBase <TNode>
 {
     return(new DictionaryBundle <TNode>(tagger));
 }