[BACK]Return to shell.hh CVS log [TXT][DIR] Up to [local] / OpenXM / src / kan96xx / Kan

File: [local] / OpenXM / src / kan96xx / Kan / Attic / shell.hh (download)

Revision 1.1, Mon Nov 24 12:38:17 2003 UTC (20 years, 7 months ago) by takayama
Branch: MAIN

Added a new function KoxWhich();

Examples:
sm1>[(shell:which) (sm1)] extension ::
$/home/taka/OpenXM/bin/sm1$
sm1>[(shell:which) (hoge)] extension ::
Error: oxWhich_unix: could not find it in the path string.
%[null]
sm1>[(shell:which) (shell.c) (/home/taka/OpenXM/src/kan96xx/Kan)] extension ::
$/home/taka/OpenXM/src/kan96xx/Kan/shell.c$

/* $OpenXM: OpenXM/src/kan96xx/Kan/shell.hh,v 1.1 2003/11/24 12:38:17 takayama Exp $ */
else if (strcmp(key,"shell:which") == 0) {
  rob = NullObject;
  if (size == 2) {
	obj1 = getoa(obj,1);
	if (obj1.tag != Sdollar) errorKan1("%s\n","[(shell:which) cmdname] extension");
	rob = KoxWhich(obj1,KpoInteger(0));
  }else if (size == 3) {
	obj1 = getoa(obj,1);
	if (obj1.tag != Sdollar) errorKan1("%s\n","[(shell:which) cmdname] extension");
	obj2 = getoa(obj,2);
	if (obj2.tag != Sdollar) errorKan1("%s\n","[(shell:which) cmdname path] extension");
	obj1=getoa(obj,1); obj2=getoa(obj,2);
	rob = KoxWhich(obj1,obj2);
  }else{
	errorKan1("%s\n","[(shell:which) cmdname] extension or [(shell:which) cmdnamd path] extension ");
  }
}