Esempio n. 1
0
/* ****************************************************************************
*
* paOptionsNoOf - 
*/
int paOptionsNoOf(PaiArgument* paList)
{
  int ix   = 0;
  int opts = 0;

  if (paList == NULL)
  {
    return paBuiltinNoOf();
  }

  PA_M(("Counting args"));

  while (paList[ix].type != PaLastArg)
  {
    PA_M(("arg %d: '%s'", ix, paList[ix].option));
    if (paList[ix].removed != true)
    {
      ++opts;
    }
    ++ix;
    PA_M(("%d args so far", opts));
  }

  return opts + paBuiltinNoOf();
}
Esempio n. 2
0
/* ****************************************************************************
*
* paIxLookup - 
*/
PaiArgument* paIxLookup(PaiArgument* paList, int ix)
{
  int builtins = paBuiltinNoOf();

  if (ix < builtins)
  {
    return &paBuiltin[ix];
  }
  else if (ix < paOptionsNoOf(paList))
  {
    return &paList[ix - builtins];
  }

  return NULL;
}