[BACK]Return to strobj.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / builtin

Diff for /OpenXM_contrib2/asir2000/builtin/strobj.c between version 1.117 and 1.118

version 1.117, 2006/08/27 22:17:27 version 1.118, 2007/04/15 11:01:01
Line 45 
Line 45 
  * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,   * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
  * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.   * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
  *   *
  * $OpenXM: OpenXM_contrib2/asir2000/builtin/strobj.c,v 1.116 2006/08/19 05:35:07 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/builtin/strobj.c,v 1.117 2006/08/27 22:17:27 noro Exp $
 */  */
 #include "ca.h"  #include "ca.h"
 #include "parse.h"  #include "parse.h"
Line 105  void Pqt_to_nbp();
Line 105  void Pqt_to_nbp();
 void Pshuffle_mul(), Pharmonic_mul();  void Pshuffle_mul(), Pharmonic_mul();
 void Pnbp_hm(), Pnbp_ht(), Pnbp_hc(), Pnbp_rest();  void Pnbp_hm(), Pnbp_ht(), Pnbp_hc(), Pnbp_rest();
 void Pnbp_tm(), Pnbp_tt(), Pnbp_tc(), Pnbp_trest();  void Pnbp_tm(), Pnbp_tt(), Pnbp_tc(), Pnbp_trest();
 void Pnbm_deg();  void Pnbm_deg(), Pnbm_index();
 void Pnbm_hp_rest();  void Pnbm_hp_rest();
 void Pnbm_hxky(), Pnbm_xky_rest();  void Pnbm_hxky(), Pnbm_xky_rest();
 void Pnbm_hv(), Pnbm_tv(), Pnbm_rest(),Pnbm_trest();  void Pnbm_hv(), Pnbm_tv(), Pnbm_rest(),Pnbm_trest();
Line 188  struct ftab str_tab[] = {
Line 188  struct ftab str_tab[] = {
         {"nbp_tc", Pnbp_tc,1},          {"nbp_tc", Pnbp_tc,1},
         {"nbp_trest", Pnbp_trest,1},          {"nbp_trest", Pnbp_trest,1},
         {"nbm_deg", Pnbm_deg,1},          {"nbm_deg", Pnbm_deg,1},
           {"nbm_index", Pnbm_index,1},
         {"nbm_hxky", Pnbm_hxky,1},          {"nbm_hxky", Pnbm_hxky,1},
         {"nbm_xky_rest", Pnbm_xky_rest,1},          {"nbm_xky_rest", Pnbm_xky_rest,1},
         {"nbm_hp_rest", Pnbm_hp_rest,1},          {"nbm_hp_rest", Pnbm_hp_rest,1},
Line 2532  void Pnbm_deg(NODE arg, Q *rp)
Line 2533  void Pnbm_deg(NODE arg, Q *rp)
         else {          else {
                 m = (NBM)BDY(BDY(p));                  m = (NBM)BDY(BDY(p));
                 STOQ(m->d,*rp);                  STOQ(m->d,*rp);
           }
   }
   
   void Pnbm_index(NODE arg, Q *rp)
   {
           NBP p;
           NBM m;
           unsigned int *b;
           int d,i,r;
   
           p = (NBP)ARG0(arg);
           if ( !p )
                   STOQ(0,*rp);
           else {
                   m = (NBM)BDY(BDY(p));
                   d = m->d;
                   if ( d > 32 )
                           error("nbm_index : weight too large");
                   b = m->b;
                   for ( r = 0, i = d-2; i > 0; i-- )
                           if ( !NBM_GET(b,i) ) r |= (1<<(d-2-i));
                   STOQ(r,*rp);
         }          }
 }  }
   

Legend:
Removed from v.1.117  
changed lines
  Added in v.1.118

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>