X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=explain.c;h=9dbbbaa83ff6ca86d9a929c4720c07265915145a;hb=7e008f5dad5e5e480f0efdc5b59181072154d184;hp=315b0744fd11cf159cf0cd0c76104adf8b735cd8;hpb=4e3b3a0b8561395bec8d09025a42e208f534eba1;p=ir-tcl-moved-to-github.git diff --git a/explain.c b/explain.c index 315b074..9dbbbaa 100644 --- a/explain.c +++ b/explain.c @@ -1,11 +1,23 @@ /* * IR toolkit for tcl/tk - * (c) Index Data 1996 + * (c) Index Data 1996-1997 * See the file LICENSE for details. * Sebastian Hammer, Adam Dickmeiss * * $Log: explain.c,v $ - * Revision 1.4 1996-08-22 13:39:31 adam + * Revision 1.8 1997-09-09 10:19:51 adam + * New MSV5.0 port with fewer warnings. + * + * Revision 1.7 1997/08/28 20:17:36 adam + * Fixed small bug. + * + * Revision 1.6 1997/05/14 06:57:14 adam + * Adopted to use YAZ with C++ support. + * + * Revision 1.5 1996/08/23 11:59:47 adam + * Bug fix: infinite look in ir_oid. + * + * Revision 1.4 1996/08/22 13:39:31 adam * More work on explain. * * Revision 1.3 1996/08/21 13:32:50 adam @@ -40,11 +52,14 @@ typedef struct { int (*handle)(); } IrExpChoice; +static Odr_null *ODR_NULLVALUE = "NULL"; + typedef char *Z_ElementSetName; typedef Odr_oid *Z_AttributeSetId; typedef char *Z_InternationalString; typedef char *Z_LanguageCode; + static int ir_UnitType (IrExpArg *iea, Z_UnitType *p, const char *name, int argi); static int ir_Unit (IrExpArg *iea, @@ -279,6 +294,7 @@ static int ir_oid (IrExpArg *iea, sprintf (buf, "%c%d", first, *p); Tcl_AppendResult (iea->interp, buf, NULL); first = '.'; + p++; } return ir_match_end (name, iea, argi); } @@ -502,7 +518,7 @@ static int ir_ElementDataTypePrimitive (IrExpArg *iea, if (!ir_match_start (name, p, iea, ++argi)) return TCL_OK; - ir_choice (iea, arm, p, ODR_NULLVAL, argi); + ir_choice (iea, arm, p, ODR_NULLVALUE, argi); return ir_match_end (name, iea, argi); } @@ -663,7 +679,7 @@ static int ir_TermListElement (IrExpArg *iea, ir_InternationalString (iea, p->name, "name", argi); ir_HumanString (iea, p->title, "title", argi); if (p->searchCost) - ir_choice (iea, searchCostArm, p->searchCost, ODR_NULLVAL, argi); + ir_choice (iea, searchCostArm, p->searchCost, ODR_NULLVALUE, argi); ir_bool (iea, p->scanable, "scanable", argi); ir_sequence (ir_InternationalString, iea, p->broader, @@ -713,7 +729,7 @@ static int ir_ExtendedServicesInfo (IrExpArg *iea, ir_bool (iea, p->available, "available", argi); ir_bool (iea, p->retentionSupported, "retentionSupported", argi); - ir_choice (iea, waitActionArm, p->waitAction, ODR_NULLVAL, argi); + ir_choice (iea, waitActionArm, p->waitAction, ODR_NULLVALUE, argi); ir_HumanString (iea, p->description, "description", argi); ir_External (iea, p->specificExplain, "specificExplain", argi); @@ -916,7 +932,7 @@ static int ir_SortKeyDetails (IrExpArg *iea, ir_SortKeyDetailsSortType (iea, p->sortType, "sortType", argi); if (p->caseSensitivity) - ir_choice (iea, sortArm, p->caseSensitivity, ODR_NULLVAL, argi); + ir_choice (iea, sortArm, p->caseSensitivity, ODR_NULLVALUE, argi); return ir_match_end (name, iea, argi); } @@ -941,7 +957,7 @@ static int ir_ProcessingInformation (IrExpArg *iea, ir_CommonInfo (iea, p->commonInfo, "commonInfo", argi); ir_DatabaseName (iea, p->databaseName, "databaseName", argi); - ir_choice (iea, arm, p->processingContext, ODR_NULLVAL, argi); + ir_choice (iea, arm, p->processingContext, ODR_NULLVALUE, argi); ir_InternationalString (iea, p->name, "name", argi); ir_oid (iea, p->oid, "oid", argi); ir_HumanString (iea, p->description, "description", argi); @@ -1152,7 +1168,7 @@ static int ir_IconObjectUnit (IrExpArg *iea, { NULL, 0, NULL }}; if (!ir_match_start (name, p, iea, ++argi)) return TCL_OK; - ir_choice (iea, arm, &p->which, ODR_NULLVAL, argi); + ir_choice (iea, arm, &p->which, ODR_NULLVALUE, argi); ir_InternationalString (iea, p->bodyType, "bodyType", argi); ir_octet (iea, p->content, "content", argi); return ir_match_end (name, iea, argi); @@ -1276,7 +1292,7 @@ static int ir_QueryTypeDetails (IrExpArg *iea, if (!ir_match_start (name, p, iea, ++argi)) return TCL_OK; - ir_choice (iea, arm, &p->which, p->u.private, argi); + ir_choice (iea, arm, &p->which, p->u.zprivate, argi); return ir_match_end (name, iea, argi); } @@ -1350,7 +1366,7 @@ static int ir_ProxSupportUnit (IrExpArg *iea, { NULL, 0, NULL }}; if (!ir_match_start (name, p, iea, ++argi)) return TCL_OK; - ir_choice (iea, arm, &p->which, p->u.private, argi); + ir_choice (iea, arm, &p->which, p->u.zprivate, argi); return ir_match_end (name, iea, argi); } @@ -1395,7 +1411,7 @@ static int ir_AccessRestrictionsUnit (IrExpArg *iea, if (!ir_match_start (name, p, iea, ++argi)) return TCL_OK; - ir_choice (iea, arm, p->accessType, ODR_NULLVAL, argi); + ir_choice (iea, arm, p->accessType, ODR_NULLVALUE, argi); ir_HumanString (iea, p->accessText, "accessText", argi); ir_sequence (ir_oid, iea, p->accessChallenges, &p->num_accessChallenges, "accessChallenges", argi); @@ -1502,7 +1518,7 @@ static int ir_AttributeOccurrence (IrExpArg *iea, ir_oid (iea, p->attributeSet, "attributeSet", argi); ir_integer (iea, p->attributeType, "attributeType", argi); ir_null (iea, p->mustBeSupplied, "mustBeSupplied", argi); - ir_choice (iea, arm, &p->which, p->attributeValues->anyOrNone, argi); + ir_choice (iea, arm, &p->which, p->attributeValues.anyOrNone, argi); return ir_match_end (name, iea, argi); }