matchsublist.java

来自「计算机代数系统」· Java 代码 · 共 43 行

JAVA
43
字号
package net.sf.yacas;/// Class for matching against a list of YacasParamMatcherBase objects.class MatchSubList extends YacasParamMatcherBase{  public MatchSubList(YacasParamMatcherBase[] aMatchers, int aNrMatchers)  {    iMatchers = aMatchers;    iNrMatchers = aNrMatchers;  }  public boolean ArgumentMatches(LispEnvironment  aEnvironment,                                      LispPtr  aExpression,                                      LispPtr[]  arguments) throws Exception  {    if (aExpression.Get().SubList() == null)        return false;    int i;    LispIterator iter = new LispIterator(aExpression);    iter.GoSub();        for (i=0;i<iNrMatchers;i++)    {        LispPtr  ptr = iter.Ptr();        if (ptr == null)            return false;        if (iter.GetObject() == null)            return false;        if (!iMatchers[i].ArgumentMatches(aEnvironment,ptr,arguments))            return false;        iter.GoNext();    }    if (iter.GetObject() != null)        return false;    return true;  }  protected YacasParamMatcherBase[] iMatchers;  protected int iNrMatchers;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?