📄 z-exp.c
字号:
/* Generated automatically by the YAZ ASN.1 Compiler 0.3 *//* Module-C: RecordSyntax-explain */#include <yaz/z-exp.h>int z_ExplainRecord (ODR o, Z_ExplainRecord **p, int opt, const char *name){ static Odr_arm arm[] = { {ODR_IMPLICIT, ODR_CONTEXT, 0, Z_Explain_targetInfo, (Odr_fun) z_TargetInfo, "targetInfo"}, {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_Explain_databaseInfo, (Odr_fun) z_DatabaseInfo, "databaseInfo"}, {ODR_IMPLICIT, ODR_CONTEXT, 2, Z_Explain_schemaInfo, (Odr_fun) z_SchemaInfo, "schemaInfo"}, {ODR_IMPLICIT, ODR_CONTEXT, 3, Z_Explain_tagSetInfo, (Odr_fun) z_TagSetInfo, "tagSetInfo"}, {ODR_IMPLICIT, ODR_CONTEXT, 4, Z_Explain_recordSyntaxInfo, (Odr_fun) z_RecordSyntaxInfo, "recordSyntaxInfo"}, {ODR_IMPLICIT, ODR_CONTEXT, 5, Z_Explain_attributeSetInfo, (Odr_fun) z_AttributeSetInfo, "attributeSetInfo"}, {ODR_IMPLICIT, ODR_CONTEXT, 6, Z_Explain_termListInfo, (Odr_fun) z_TermListInfo, "termListInfo"}, {ODR_IMPLICIT, ODR_CONTEXT, 7, Z_Explain_extendedServicesInfo, (Odr_fun) z_ExtendedServicesInfo, "extendedServicesInfo"}, {ODR_IMPLICIT, ODR_CONTEXT, 8, Z_Explain_attributeDetails, (Odr_fun) z_AttributeDetails, "attributeDetails"}, {ODR_IMPLICIT, ODR_CONTEXT, 9, Z_Explain_termListDetails, (Odr_fun) z_TermListDetails, "termListDetails"}, {ODR_IMPLICIT, ODR_CONTEXT, 10, Z_Explain_elementSetDetails, (Odr_fun) z_ElementSetDetails, "elementSetDetails"}, {ODR_IMPLICIT, ODR_CONTEXT, 11, Z_Explain_retrievalRecordDetails, (Odr_fun) z_RetrievalRecordDetails, "retrievalRecordDetails"}, {ODR_IMPLICIT, ODR_CONTEXT, 12, Z_Explain_sortDetails, (Odr_fun) z_SortDetails, "sortDetails"}, {ODR_IMPLICIT, ODR_CONTEXT, 13, Z_Explain_processing, (Odr_fun) z_ProcessingInformation, "processing"}, {ODR_IMPLICIT, ODR_CONTEXT, 14, Z_Explain_variants, (Odr_fun) z_VariantSetInfo, "variants"}, {ODR_IMPLICIT, ODR_CONTEXT, 15, Z_Explain_units, (Odr_fun) z_UnitInfo, "units"}, {ODR_IMPLICIT, ODR_CONTEXT, 100, Z_Explain_categoryList, (Odr_fun) z_CategoryList, "categoryList"}, {-1, -1, -1, -1, (Odr_fun) 0, 0} }; if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name)) return 1; *p = 0; return odr_missing(o, opt, name);}int z_TargetInfo (ODR o, Z_TargetInfo **p, int opt, const char *name){ if (!odr_sequence_begin (o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag (o, z_CommonInfo, &(*p)->commonInfo, ODR_CONTEXT, 0, 1, "commonInfo") && odr_implicit_tag (o, z_InternationalString, &(*p)->name, ODR_CONTEXT, 1, 0, "name") && odr_implicit_tag (o, z_HumanString, &(*p)->recentNews, ODR_CONTEXT, 2, 1, "recentNews") && odr_implicit_tag (o, z_IconObject, &(*p)->icon, ODR_CONTEXT, 3, 1, "icon") && odr_implicit_tag (o, odr_bool, &(*p)->namedResultSets, ODR_CONTEXT, 4, 0, "namedResultSets") && odr_implicit_tag (o, odr_bool, &(*p)->multipleDBsearch, ODR_CONTEXT, 5, 0, "multipleDBsearch") && odr_implicit_tag (o, odr_integer, &(*p)->maxResultSets, ODR_CONTEXT, 6, 1, "maxResultSets") && odr_implicit_tag (o, odr_integer, &(*p)->maxResultSize, ODR_CONTEXT, 7, 1, "maxResultSize") && odr_implicit_tag (o, odr_integer, &(*p)->maxTerms, ODR_CONTEXT, 8, 1, "maxTerms") && odr_implicit_tag (o, z_IntUnit, &(*p)->timeoutInterval, ODR_CONTEXT, 9, 1, "timeoutInterval") && odr_implicit_tag (o, z_HumanString, &(*p)->welcomeMessage, ODR_CONTEXT, 10, 1, "welcomeMessage") && odr_implicit_tag (o, z_ContactInfo, &(*p)->contactInfo, ODR_CONTEXT, 11, 1, "contactInfo") && odr_implicit_tag (o, z_HumanString, &(*p)->description, ODR_CONTEXT, 12, 1, "description") && odr_implicit_settag (o, ODR_CONTEXT, 13) && (odr_sequence_of(o, (Odr_fun) z_InternationalString, &(*p)->nicknames, &(*p)->num_nicknames, "nicknames") || odr_ok(o)) && odr_implicit_tag (o, z_HumanString, &(*p)->usageRest, ODR_CONTEXT, 14, 1, "usageRest") && odr_implicit_tag (o, z_HumanString, &(*p)->paymentAddr, ODR_CONTEXT, 15, 1, "paymentAddr") && odr_implicit_tag (o, z_HumanString, &(*p)->hours, ODR_CONTEXT, 16, 1, "hours") && odr_implicit_settag (o, ODR_CONTEXT, 17) && (odr_sequence_of(o, (Odr_fun) z_DatabaseList, &(*p)->dbCombinations, &(*p)->num_dbCombinations, "dbCombinations") || odr_ok(o)) && odr_implicit_settag (o, ODR_CONTEXT, 18) && (odr_sequence_of(o, (Odr_fun) z_NetworkAddress, &(*p)->addresses, &(*p)->num_addresses, "addresses") || odr_ok(o)) && odr_implicit_settag (o, ODR_CONTEXT, 101) && (odr_sequence_of(o, (Odr_fun) z_InternationalString, &(*p)->languages, &(*p)->num_languages, "languages") || odr_ok(o)) && odr_implicit_tag (o, z_AccessInfo, &(*p)->commonAccessInfo, ODR_CONTEXT, 19, 1, "commonAccessInfo") && odr_sequence_end (o);}int z_DatabaseInfo (ODR o, Z_DatabaseInfo **p, int opt, const char *name){ static Odr_arm arm[] = { {ODR_IMPLICIT, ODR_CONTEXT, 0, Z_DatabaseInfo_actualNumber, (Odr_fun) odr_integer, "actualNumber"}, {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_DatabaseInfo_approxNumber, (Odr_fun) odr_integer, "approxNumber"}, {-1, -1, -1, -1, (Odr_fun) 0, 0} }; if (!odr_sequence_begin (o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag (o, z_CommonInfo, &(*p)->commonInfo, ODR_CONTEXT, 0, 1, "commonInfo") && odr_implicit_tag (o, z_DatabaseName, &(*p)->name, ODR_CONTEXT, 1, 0, "name") && odr_implicit_tag (o, odr_null, &(*p)->explainDatabase, ODR_CONTEXT, 2, 1, "explainDatabase") && odr_implicit_settag (o, ODR_CONTEXT, 3) && (odr_sequence_of(o, (Odr_fun) z_DatabaseName, &(*p)->nicknames, &(*p)->num_nicknames, "nicknames") || odr_ok(o)) && odr_implicit_tag (o, z_IconObject, &(*p)->icon, ODR_CONTEXT, 4, 1, "icon") && odr_implicit_tag (o, odr_bool, &(*p)->userFee, ODR_CONTEXT, 5, 0, "userFee") && odr_implicit_tag (o, odr_bool, &(*p)->available, ODR_CONTEXT, 6, 0, "available") && odr_implicit_tag (o, z_HumanString, &(*p)->titleString, ODR_CONTEXT, 7, 1, "titleString") && odr_implicit_settag (o, ODR_CONTEXT, 8) && (odr_sequence_of(o, (Odr_fun) z_HumanString, &(*p)->keywords, &(*p)->num_keywords, "keywords") || odr_ok(o)) && odr_implicit_tag (o, z_HumanString, &(*p)->description, ODR_CONTEXT, 9, 1, "description") && odr_implicit_tag (o, z_DatabaseList, &(*p)->associatedDbs, ODR_CONTEXT, 10, 1, "associatedDbs") && odr_implicit_tag (o, z_DatabaseList, &(*p)->subDbs, ODR_CONTEXT, 11, 1, "subDbs") && odr_implicit_tag (o, z_HumanString, &(*p)->disclaimers, ODR_CONTEXT, 12, 1, "disclaimers") && odr_implicit_tag (o, z_HumanString, &(*p)->news, ODR_CONTEXT, 13, 1, "news") && ((odr_constructed_begin (o, &(*p)->u, ODR_CONTEXT, 14, "recordCount") && odr_choice (o, arm, &(*p)->u, &(*p)->which, 0) && odr_constructed_end (o)) || odr_ok(o)) && odr_implicit_tag (o, z_HumanString, &(*p)->defaultOrder, ODR_CONTEXT, 15, 1, "defaultOrder") && odr_implicit_tag (o, odr_integer, &(*p)->avRecordSize, ODR_CONTEXT, 16, 1, "avRecordSize") && odr_implicit_tag (o, odr_integer, &(*p)->maxRecordSize, ODR_CONTEXT, 17, 1, "maxRecordSize") && odr_implicit_tag (o, z_HumanString, &(*p)->hours, ODR_CONTEXT, 18, 1, "hours") && odr_implicit_tag (o, z_HumanString, &(*p)->bestTime, ODR_CONTEXT, 19, 1, "bestTime") && odr_implicit_tag (o, odr_generalizedtime, &(*p)->lastUpdate, ODR_CONTEXT, 20, 1, "lastUpdate") && odr_implicit_tag (o, z_IntUnit, &(*p)->updateInterval, ODR_CONTEXT, 21, 1, "updateInterval") && odr_implicit_tag (o, z_HumanString, &(*p)->coverage, ODR_CONTEXT, 22, 1, "coverage") && odr_implicit_tag (o, odr_bool, &(*p)->proprietary, ODR_CONTEXT, 23, 1, "proprietary") && odr_implicit_tag (o, z_HumanString, &(*p)->copyrightText, ODR_CONTEXT, 24, 1, "copyrightText") && odr_implicit_tag (o, z_HumanString, &(*p)->copyrightNotice, ODR_CONTEXT, 25, 1, "copyrightNotice") && odr_implicit_tag (o, z_ContactInfo, &(*p)->producerContactInfo, ODR_CONTEXT, 26, 1, "producerContactInfo") && odr_implicit_tag (o, z_ContactInfo, &(*p)->supplierContactInfo, ODR_CONTEXT, 27, 1, "supplierContactInfo") && odr_implicit_tag (o, z_ContactInfo, &(*p)->submissionContactInfo, ODR_CONTEXT, 28, 1, "submissionContactInfo") && odr_implicit_tag (o, z_AccessInfo, &(*p)->accessInfo, ODR_CONTEXT, 29, 1, "accessInfo") && odr_sequence_end (o);}int z_TagTypeMapping (ODR o, Z_TagTypeMapping **p, int opt, const char *name){ if (!odr_sequence_begin (o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag (o, odr_integer, &(*p)->tagType, ODR_CONTEXT, 0, 0, "tagType") && odr_implicit_tag (o, odr_oid, &(*p)->tagSet, ODR_CONTEXT, 1, 1, "tagSet") && odr_implicit_tag (o, odr_null, &(*p)->defaultTagType, ODR_CONTEXT, 2, 1, "defaultTagType") && odr_sequence_end (o);}int z_SchemaInfo (ODR o, Z_SchemaInfo **p, int opt, const char *name){ if (!odr_sequence_begin (o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag (o, z_CommonInfo, &(*p)->commonInfo, ODR_CONTEXT, 0, 1, "commonInfo") && odr_implicit_tag (o, odr_oid, &(*p)->schema, ODR_CONTEXT, 1, 0, "schema") && odr_implicit_tag (o, z_InternationalString, &(*p)->name, ODR_CONTEXT, 2, 0, "name") && odr_implicit_tag (o, z_HumanString, &(*p)->description, ODR_CONTEXT, 3, 1, "description") && odr_implicit_settag (o, ODR_CONTEXT, 4) && (odr_sequence_of(o, (Odr_fun) z_TagTypeMapping, &(*p)->tagTypeMapping, &(*p)->num_tagTypeMapping, "tagTypeMapping") || odr_ok(o)) && odr_implicit_settag (o, ODR_CONTEXT, 5) && (odr_sequence_of(o, (Odr_fun) z_ElementInfo, &(*p)->recordStructure, &(*p)->num_recordStructure, "recordStructure") || odr_ok(o)) && odr_sequence_end (o);}int z_ElementInfo (ODR o, Z_ElementInfo **p, int opt, const char *name){ if (!odr_sequence_begin (o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag (o, z_InternationalString, &(*p)->elementName, ODR_CONTEXT, 1, 0, "elementName") && odr_implicit_tag (o, z_Path, &(*p)->elementTagPath, ODR_CONTEXT, 2, 0, "elementTagPath") && odr_explicit_tag (o, z_ElementDataType, &(*p)->dataType, ODR_CONTEXT, 3, 1, "dataType") && odr_implicit_tag (o, odr_bool, &(*p)->required, ODR_CONTEXT, 4, 0, "required") && odr_implicit_tag (o, odr_bool, &(*p)->repeatable, ODR_CONTEXT, 5, 0, "repeatable") && odr_implicit_tag (o, z_HumanString, &(*p)->description, ODR_CONTEXT, 6, 1, "description") && odr_sequence_end (o);}int z_PathUnit (ODR o, Z_PathUnit **p, int opt, const char *name){ if (!odr_sequence_begin (o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag (o, odr_integer, &(*p)->tagType, ODR_CONTEXT, 1, 0, "tagType") && odr_explicit_tag (o, z_StringOrNumeric, &(*p)->tagValue, ODR_CONTEXT, 2, 0, "tagValue") && odr_sequence_end (o);}int z_Path (ODR o, Z_Path **p, int opt, const char *name){ if (!odr_initmember (o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_sequence_of (o, (Odr_fun) z_PathUnit, &(*p)->elements, &(*p)->num, name)) return 1; *p = 0; return odr_missing(o, opt, name);}int z_ElementInfoList (ODR o, Z_ElementInfoList **p, int opt, const char *name){ if (!odr_initmember (o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_sequence_of (o, (Odr_fun) z_ElementInfo, &(*p)->elements, &(*p)->num, name)) return 1; *p = 0; return odr_missing(o, opt, name);}int z_ElementDataType (ODR o, Z_ElementDataType **p, int opt, const char *name){ static Odr_arm arm[] = { {ODR_IMPLICIT, ODR_CONTEXT, 0, Z_ElementDataType_primitive, (Odr_fun) z_PrimitiveDataType, "primitive"}, {ODR_IMPLICIT, ODR_CONTEXT, 1, Z_ElementDataType_structured, (Odr_fun) z_ElementInfoList, "structured"}, {-1, -1, -1, -1, (Odr_fun) 0, 0} }; if (!odr_initmember(o, p, sizeof(**p))) return odr_missing(o, opt, name); if (odr_choice(o, arm, &(*p)->u, &(*p)->which, name)) return 1; *p = 0; return odr_missing(o, opt, name);}int z_PrimitiveDataType (ODR o, Z_PrimitiveDataType **p, int opt, const char *name){ return odr_integer (o, p, opt, name);}int z_TagSetElements (ODR o, Z_TagSetElements **p, int opt, const char *name){ if (!odr_sequence_begin (o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag (o, z_InternationalString, &(*p)->elementname, ODR_CONTEXT, 1, 0, "elementname") && odr_implicit_settag (o, ODR_CONTEXT, 2) && (odr_sequence_of(o, (Odr_fun) z_InternationalString, &(*p)->nicknames, &(*p)->num_nicknames, "nicknames") || odr_ok(o)) && odr_explicit_tag (o, z_StringOrNumeric, &(*p)->elementTag, ODR_CONTEXT, 3, 0, "elementTag") && odr_implicit_tag (o, z_HumanString, &(*p)->description, ODR_CONTEXT, 4, 1, "description") && odr_explicit_tag (o, z_PrimitiveDataType, &(*p)->dataType, ODR_CONTEXT, 5, 1, "dataType") && z_OtherInformation(o, &(*p)->otherTagInfo, 1, "otherTagInfo") && odr_sequence_end (o);}int z_TagSetInfo (ODR o, Z_TagSetInfo **p, int opt, const char *name){ if (!odr_sequence_begin (o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag (o, z_CommonInfo, &(*p)->commonInfo, ODR_CONTEXT, 0, 1, "commonInfo") && odr_implicit_tag (o, odr_oid, &(*p)->tagSet, ODR_CONTEXT, 1, 0, "tagSet") && odr_implicit_tag (o, z_InternationalString, &(*p)->name, ODR_CONTEXT, 2, 0, "name") && odr_implicit_tag (o, z_HumanString, &(*p)->description, ODR_CONTEXT, 3, 1, "description") && odr_implicit_settag (o, ODR_CONTEXT, 4) && (odr_sequence_of(o, (Odr_fun) z_TagSetElements, &(*p)->elements, &(*p)->num_elements, "elements") || odr_ok(o)) && odr_sequence_end (o);}int z_RecordSyntaxInfo (ODR o, Z_RecordSyntaxInfo **p, int opt, const char *name){ if (!odr_sequence_begin (o, p, sizeof(**p), name)) return odr_missing(o, opt, name) && odr_ok (o); return odr_implicit_tag (o, z_CommonInfo, &(*p)->commonInfo, ODR_CONTEXT, 0, 1, "commonInfo") && odr_implicit_tag (o, odr_oid, &(*p)->recordSyntax, ODR_CONTEXT, 1, 0, "recordSyntax") && odr_implicit_tag (o, z_InternationalString, &(*p)->name, ODR_CONTEXT, 2, 0, "name") && odr_implicit_settag (o, ODR_CONTEXT, 3) && (odr_sequence_of(o, (Odr_fun) odr_oid, &(*p)->transferSyntaxes, &(*p)->num_transferSyntaxes, "transferSyntaxes") || odr_ok(o)) && odr_implicit_tag (o, z_HumanString, &(*p)->description, ODR_CONTEXT, 4, 1, "description") && odr_implicit_tag (o, z_InternationalString, &(*p)->asn1Module, ODR_CONTEXT, 5, 1, "asn1Module") && odr_implicit_settag (o, ODR_CONTEXT, 6) && (odr_sequence_of(o, (Odr_fun) z_ElementInfo, &(*p)->abstractStructure, &(*p)->num_abstractStructure, "abstractStructure") || odr_ok(o)) && odr_sequence_end (o);}int z_AttributeSetInfo (ODR o, Z_AttributeSetInfo **p, int opt, const char *name)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -