Class: RPM::MatchIterator
- Inherits:
-
Data
- Object
- Data
- RPM::MatchIterator
- Includes:
- Enumerable
- Defined in:
- ext/rpm/db.c
Instance Method Summary collapse
- #count ⇒ Object
- #each ⇒ Object
- #get_iterator_count ⇒ Object
- #length ⇒ Object
- #next_iterator ⇒ Object
- #offset ⇒ Object
- #regexp(tag, mode, re) ⇒ Object
- #set_iterator_re(tag, mode, re) ⇒ Object
- #set_iterator_version(version) ⇒ Object
- #version(version) ⇒ Object
Instance Method Details
#count ⇒ Object
1074 1075 1076 1077 1078 |
# File 'ext/rpm/db.c', line 1074
VALUE
rpm_mi_get_iterator_count(VALUE mi)
{
return INT2NUM(rpmdbGetIteratorCount(RPM_MI(mi)));
}
|
#each ⇒ Object
1122 1123 1124 1125 1126 1127 1128 1129 |
# File 'ext/rpm/db.c', line 1122
VALUE
rpm_mi_each(VALUE mi)
{
VALUE p;
while(!NIL_P( p = rpm_mi_next_iterator(mi)))
rb_yield (p);
return Qnil;
}
|
#get_iterator_count ⇒ Object
1074 1075 1076 1077 1078 |
# File 'ext/rpm/db.c', line 1074
VALUE
rpm_mi_get_iterator_count(VALUE mi)
{
return INT2NUM(rpmdbGetIteratorCount(RPM_MI(mi)));
}
|
#length ⇒ Object
1074 1075 1076 1077 1078 |
# File 'ext/rpm/db.c', line 1074
VALUE
rpm_mi_get_iterator_count(VALUE mi)
{
return INT2NUM(rpmdbGetIteratorCount(RPM_MI(mi)));
}
|
#next_iterator ⇒ Object
1064 1065 1066 1067 1068 1069 1070 1071 1072 |
# File 'ext/rpm/db.c', line 1064
VALUE
rpm_mi_next_iterator(VALUE mi)
{
Header hdr;
hdr = rpmdbNextIterator(RPM_MI(mi));
if (hdr)
return rpm_package_new_from_header(hdr);
return Qnil;
}
|
#offset ⇒ Object
1080 1081 1082 1083 1084 1085 1086 1087 |
# File 'ext/rpm/db.c', line 1080
VALUE
rpm_mi_get_iterator_offset(VALUE mi)
{
int off = rpmdbGetIteratorOffset(RPM_MI(mi));
if (off)
return INT2NUM(off);
return Qnil;
}
|
#regexp(tag, mode, re) ⇒ Object
1089 1090 1091 1092 1093 1094 1095 1096 1097 |
# File 'ext/rpm/db.c', line 1089
VALUE
rpm_mi_set_iterator_re(VALUE mi,VALUE tag, VALUE mode, VALUE re)
{
if (TYPE(re) != T_STRING)
rb_raise(rb_eTypeError, "illegal argument type");
rpmdbSetIteratorRE(RPM_MI(mi),NUM2INT(tag),NUM2INT(mode),RSTRING_PTR(re));
return mi;
}
|
#set_iterator_re(tag, mode, re) ⇒ Object
1089 1090 1091 1092 1093 1094 1095 1096 1097 |
# File 'ext/rpm/db.c', line 1089
VALUE
rpm_mi_set_iterator_re(VALUE mi,VALUE tag, VALUE mode, VALUE re)
{
if (TYPE(re) != T_STRING)
rb_raise(rb_eTypeError, "illegal argument type");
rpmdbSetIteratorRE(RPM_MI(mi),NUM2INT(tag),NUM2INT(mode),RSTRING_PTR(re));
return mi;
}
|
#set_iterator_version(version) ⇒ Object
1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 |
# File 'ext/rpm/db.c', line 1099
VALUE
rpm_mi_set_iterator_version(VALUE mi, VALUE version)
{
/* Epoch!! */
VALUE r;
if (rb_obj_is_kind_of(version, rpm_cVersion) == Qfalse)
rb_raise(rb_eTypeError, "illegal argument type");
#if RPM_VERSION_CODE < RPM_VERSION(4,1,0)
rpmdbSetIteratorVersion(RPM_MI(mi),RSTRING_PTR(rpm_version_get_v(version)));
#else
rpmdbSetIteratorRE(RPM_MI(mi),RPMTAG_VERSION,RPMMIRE_DEFAULT,RSTRING_PTR(rpm_version_get_v(version)));
#endif
r = rpm_version_get_r(version);
if(!NIL_P(r)){
#if RPM_VERSION_CODE < RPM_VERSION(4,1,0)
rpmdbSetIteratorRelease(RPM_MI(mi),RSTRING_PTR(r));
#else
rpmdbSetIteratorRE(RPM_MI(mi),RPMTAG_RELEASE,RPMMIRE_DEFAULT,RSTRING_PTR(r));
#endif
}
return mi;
}
|
#version(version) ⇒ Object
1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 |
# File 'ext/rpm/db.c', line 1099
VALUE
rpm_mi_set_iterator_version(VALUE mi, VALUE version)
{
/* Epoch!! */
VALUE r;
if (rb_obj_is_kind_of(version, rpm_cVersion) == Qfalse)
rb_raise(rb_eTypeError, "illegal argument type");
#if RPM_VERSION_CODE < RPM_VERSION(4,1,0)
rpmdbSetIteratorVersion(RPM_MI(mi),RSTRING_PTR(rpm_version_get_v(version)));
#else
rpmdbSetIteratorRE(RPM_MI(mi),RPMTAG_VERSION,RPMMIRE_DEFAULT,RSTRING_PTR(rpm_version_get_v(version)));
#endif
r = rpm_version_get_r(version);
if(!NIL_P(r)){
#if RPM_VERSION_CODE < RPM_VERSION(4,1,0)
rpmdbSetIteratorRelease(RPM_MI(mi),RSTRING_PTR(r));
#else
rpmdbSetIteratorRE(RPM_MI(mi),RPMTAG_RELEASE,RPMMIRE_DEFAULT,RSTRING_PTR(r));
#endif
}
return mi;
}
|