示例#1
0
            public virtual void connect()
            {
                GrammarArc[] successors = this.getSuccessors();
                int          num        = successors.Length;

                for (int i = 0; i < num; i++)
                {
                    GrammarArc          grammarArc = successors[i];
                    FlatLinguist.GState gstate     = this.this_0.getGState(grammarArc.getGrammarNode());
                    if (gstate.getNode().isEmpty() || !String.instancehelper_equals(gstate.getNode().getWord().getSpelling(), "<s>"))
                    {
                        float num2 = grammarArc.getProbability();
                        if (FlatLinguist.access_800(this.this_0) && !gstate.getNode().isEmpty())
                        {
                            int num3 = gstate.getNode().getWord().getPronunciations().Length;
                            num2 -= this.this_0.logMath.linearToLog((double)num3);
                        }
                        float    num4     = num2;
                        Iterator iterator = this.exitPoints.entrySet().iterator();
                        while (iterator.hasNext())
                        {
                            Map.Entry entry = (Map.Entry)iterator.next();
                            List      list  = gstate.getEntryPoints((ContextPair)entry.getKey());
                            if (list != null)
                            {
                                List list2 = (List)entry.getValue();
                                this.connect(list2, list, num4);
                            }
                        }
                    }
                }
            }
示例#2
0
            internal virtual void pushLeftContexts(Set set, Collection collection)
            {
                if (set.contains(this.getNode()))
                {
                    return;
                }
                set.add(this.getNode());
                GrammarArc[] successors = this.getSuccessors();
                int          num        = successors.Length;

                for (int i = 0; i < num; i++)
                {
                    GrammarArc          grammarArc = successors[i];
                    FlatLinguist.GState gstate     = this.this_0.getGState(grammarArc.getGrammarNode());
                    gstate.addLeftContext(collection);
                    if (gstate.getNode().isEmpty())
                    {
                        gstate.pushLeftContexts(set, collection);
                    }
                }
            }