⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 listedbranchinguserfunction.java

📁 计算机代数系统
💻 JAVA
字号:
package net.sf.yacas;class ListedBranchingUserFunction extends BranchingUserFunction{  public ListedBranchingUserFunction(LispPtr  aParameters) throws Exception  {    super(aParameters);  }  public boolean IsArity(int aArity)  {    return (Arity() <= aArity);  }  public void Evaluate(LispPtr aResult, LispEnvironment aEnvironment, LispPtr aArguments) throws Exception  {    LispPtr newArgs = new LispPtr();    LispIterator iter = new LispIterator(aArguments);    LispPtr ptr =  newArgs;    int arity = Arity();    int i=0;    while (i < arity && iter.GetObject() != null)    {        ptr.Set(iter.GetObject().Copy(false));        ptr = (ptr.Get().Next());        i++;        iter.GoNext();    }    if (iter.GetObject().Next().Get() == null)    {        ptr.Set(iter.GetObject().Copy(false));        ptr = (ptr.Get().Next());        i++;        iter.GoNext();        LispError.LISPASSERT(iter.GetObject() == null);    }    else    {        LispPtr head = new LispPtr();        head.Set(aEnvironment.iList.Copy(false));        head.Get().Next().Set(iter.GetObject());        ptr.Set(LispSubList.New(head.Get()));    }    super.Evaluate(aResult, aEnvironment, newArgs);  }}

⌨️ 快捷键说明

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