ruby-rpm 1.3.0 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,17 @@
1
+ 2011-08-20 Duncan Mac-Vicar P. <dmacvicar@suse.de>
2
+
3
+ * Release 1.3.1
4
+ * Move the japanese guide to in-source documentation that can
5
+ be generated
6
+ * Use bundler tasks
7
+ * Specify version for gem dependencies
8
+ * patches from Anders F Bjorklund (2):
9
+ - stpcpy declaration clashing with darwin's <string.h>
10
+ - use rbconfig to get DLEXT instead of hardcoding .so
11
+ - patches for rpm 4.4.6, 4.4.8 and 5
12
+ * patches from Lubomir Rintel (1):
13
+ - Add a missing header that caused compile to fail
14
+
1
15
  2010-08-19 Duncan Mac-Vicar P. <dmacvicar@suse.de>
2
16
 
3
17
  * build system cleanup
@@ -50,6 +50,20 @@ db_free(rpm_db_t* db)
50
50
  db_unref(db);
51
51
  }
52
52
 
53
+ /*
54
+ * The package database is opened, but transactional processing
55
+ * (@see RPM::DB#transaction) cannot be done for when +writable+ is false.
56
+ * When +writable+ is +false+ then the generated object gets freezed.
57
+ * @param [Boolean] writable Whether the database is writable. Default is +false+.
58
+ * @param [String] root Root path for the database, default is empty.
59
+ * @return [RPM::DB]
60
+ *
61
+ * @example
62
+ * db = RPM::DB.open
63
+ * db.each do |pkg|
64
+ * puts pkg.name
65
+ * end
66
+ */
53
67
  static VALUE
54
68
  db_s_open(int argc, VALUE* argv, VALUE obj)
55
69
  {
@@ -107,6 +121,13 @@ rpm_db_open(int writable, const char* root)
107
121
  return db_s_open(2, argv, rpm_cDB);
108
122
  }
109
123
 
124
+ /*
125
+ * Initialize the package database
126
+ * The database {RPM::DB#root} / var / lib /rpm is created.
127
+ *
128
+ * @param [String] root Root of the database
129
+ * @param [Boolean] writable Whether the database is writable. Default +false+.
130
+ */
110
131
  static VALUE
111
132
  db_s_init(int argc, VALUE* argv, VALUE obj)
112
133
  {
@@ -140,6 +161,9 @@ db_s_init(int argc, VALUE* argv, VALUE obj)
140
161
  return Qnil;
141
162
  }
142
163
 
164
+ /*
165
+ * See RPM::DB#init
166
+ */
143
167
  void
144
168
  rpm_db_init(const char* root, int writable)
145
169
  {
@@ -149,6 +173,11 @@ rpm_db_init(const char* root, int writable)
149
173
  db_s_init(2, argv, rpm_cDB);
150
174
  }
151
175
 
176
+ /*
177
+ * Rebuild the package database
178
+ * It should reside in +root+ / var / lib /rpm
179
+ * @param [String] root Root path of the database
180
+ */
152
181
  static VALUE
153
182
  db_s_rebuild(int argc, VALUE* argv, VALUE obj)
154
183
  {
@@ -175,8 +204,10 @@ db_s_rebuild(int argc, VALUE* argv, VALUE obj)
175
204
 
176
205
  #if RPM_VERSION_CODE < RPM_VERSION(4,1,0)
177
206
  ret = rpmdbRebuild(root);
178
- #else
207
+ #elif RPM_VERSION_CODE < RPM_VERSION(5,0,0)
179
208
  ret = rpmdbRebuild(root, NULL, NULL);
209
+ #else
210
+ ret = rpmdbRebuild(root, NULL);
180
211
  #endif
181
212
  if (ret) {
182
213
  rb_raise(rb_eRuntimeError, "can not rebuild database in %s",
@@ -195,6 +226,9 @@ rpm_db_rebuild(const char* root)
195
226
  db_s_rebuild(1, argv, rpm_cDB);
196
227
  }
197
228
 
229
+ /*
230
+ * Closes the database
231
+ */
198
232
  VALUE
199
233
  rpm_db_close(VALUE db)
200
234
  {
@@ -204,6 +238,9 @@ rpm_db_close(VALUE db)
204
238
  return Qnil;
205
239
  }
206
240
 
241
+ /*
242
+ * @return [Boolean] +true+ if the database is closed
243
+ */
207
244
  VALUE
208
245
  rpm_db_is_closed(VALUE vdb)
209
246
  {
@@ -219,6 +256,9 @@ check_closed(VALUE db)
219
256
  }
220
257
 
221
258
  #ifndef RPMDB_OPAQUE
259
+ /*
260
+ * @return [String] The root path of the database
261
+ */
222
262
  VALUE
223
263
  rpm_db_get_root(VALUE db)
224
264
  {
@@ -226,6 +266,9 @@ rpm_db_get_root(VALUE db)
226
266
  return rb_str_new2(RPM_DB(db)->db_root);
227
267
  }
228
268
 
269
+ /*
270
+ * @return [String] The home path of the database
271
+ */
229
272
  VALUE
230
273
  rpm_db_get_home(VALUE db)
231
274
  {
@@ -234,6 +277,9 @@ rpm_db_get_home(VALUE db)
234
277
  }
235
278
  #endif
236
279
 
280
+ /*
281
+ * @return [Boolean] +true+ if the database is writable
282
+ */
237
283
  VALUE
238
284
  rpm_db_is_writable(VALUE db)
239
285
  {
@@ -241,6 +287,15 @@ rpm_db_is_writable(VALUE db)
241
287
  return OBJ_FROZEN(db) ? Qfalse : Qtrue;
242
288
  }
243
289
 
290
+ /*
291
+ * @yield [Package] Called for each match
292
+ * @param [Number] key RPM tag key
293
+ * @param [String] val Value to match
294
+ * @example
295
+ * db.each_match(RPM::TAG_ARCH, "x86_64") do |pkg|
296
+ * puts pkg.name
297
+ * end
298
+ */
244
299
  VALUE
245
300
  rpm_db_each_match(VALUE db, VALUE key, VALUE val)
246
301
  {
@@ -255,6 +310,13 @@ rpm_db_each_match(VALUE db, VALUE key, VALUE val)
255
310
  return Qnil;
256
311
  }
257
312
 
313
+ /*
314
+ * @yield [Package] Called for each package in the database
315
+ * @example
316
+ * db.each do |pkg|
317
+ * puts pkg.name
318
+ * end
319
+ */
258
320
  VALUE
259
321
  rpm_db_each(VALUE db)
260
322
  {
@@ -342,18 +404,30 @@ rpm_db_transaction(int argc, VALUE* argv, VALUE db)
342
404
  return rb_ivar_get(trans, id_pl);
343
405
  }
344
406
 
407
+ /*
408
+ * @return [RPM::DB] The database associated with this transaction
409
+ */
345
410
  VALUE
346
411
  rpm_transaction_get_db(VALUE trans)
347
412
  {
348
413
  return rb_ivar_get(trans, id_db);
349
414
  }
350
415
 
416
+ /*
417
+ * @return [File] Get transaction script file handle
418
+ * i.e stdout/stderr on scriptlet execution
419
+ */
351
420
  VALUE
352
421
  rpm_transaction_get_script_file(VALUE trans)
353
422
  {
354
423
  return rb_ivar_get(trans, id_sf);
355
424
  }
356
425
 
426
+ /*
427
+ * Set the transaction script file handle
428
+ * i.e stdout/stderr on scriptlet execution
429
+ * @param [File] file File handle
430
+ */
357
431
  VALUE
358
432
  rpm_transaction_set_script_file(VALUE trans, VALUE file)
359
433
  {
@@ -370,6 +444,10 @@ rpm_transaction_set_script_file(VALUE trans, VALUE file)
370
444
  return Qnil;
371
445
  }
372
446
 
447
+ /*
448
+ * Add a install operation to the transaction
449
+ * @param [Package] pkg Package to install
450
+ */
373
451
  VALUE
374
452
  rpm_transaction_install(VALUE trans, VALUE pkg, VALUE key)
375
453
  {
@@ -402,6 +480,10 @@ rpm_transaction_install(VALUE trans, VALUE pkg, VALUE key)
402
480
  return Qnil;
403
481
  }
404
482
 
483
+ /*
484
+ * Add a upgrade operation to the transaction
485
+ * @param [Package] pkg Package to upgrade
486
+ */
405
487
  VALUE
406
488
  rpm_transaction_upgrade(VALUE trans, VALUE pkg, VALUE key)
407
489
  {
@@ -468,6 +550,10 @@ rpm_transaction_available(VALUE trans, VALUE pkg, VALUE key)
468
550
  }
469
551
  #endif /* RPMTS_AVAILABLE */
470
552
 
553
+ /*
554
+ * Add a delete operation to the transaction
555
+ * @param [String, Package, Dependency] pkg Package to delete
556
+ */
471
557
  VALUE
472
558
  rpm_transaction_delete(VALUE trans, VALUE pkg)
473
559
  {
@@ -601,7 +687,11 @@ package_new_from_NEVR(const char* nevr)
601
687
  }
602
688
  #endif
603
689
 
604
-
690
+ /*
691
+ * Check the dependencies.
692
+ * @return [Array<Dependency>, +nil+] If dependencies are not met returns an
693
+ * array with dependencies. Otherwise +nil+.
694
+ */
605
695
  VALUE
606
696
  rpm_transaction_check(VALUE trans)
607
697
  {
@@ -797,6 +887,9 @@ rpm_transaction_check(VALUE trans)
797
887
  #endif
798
888
  }
799
889
 
890
+ /*
891
+ * To determine the processing order.
892
+ */
800
893
  VALUE
801
894
  rpm_transaction_order(VALUE trans)
802
895
  {
@@ -808,6 +901,10 @@ rpm_transaction_order(VALUE trans)
808
901
  return Qnil;
809
902
  }
810
903
 
904
+ /*
905
+ * @return [Array<String>] an array of keys corresponding to all transactions
906
+ * that have been added.
907
+ */
811
908
  VALUE
812
909
  rpm_transaction_keys(VALUE trans)
813
910
  {
@@ -815,16 +912,16 @@ rpm_transaction_keys(VALUE trans)
815
912
  }
816
913
 
817
914
  #if RPM_VERSION_CODE < RPM_VERSION(4,4,5)
818
- static void*
819
- transaction_callback(const void* hd, const rpmCallbackType type,
820
- const unsigned long amount, const unsigned long total,
821
- fnpyKey key, rpmCallbackData data)
915
+ typedef unsigned long rpmCallbackSize_t;
916
+ #elif RPM_VERSION(5,0,0) <= RPM_VERSION_CODE
917
+ typedef uint64_t rpmCallbackSize_t;
822
918
  #else
919
+ typedef unsigned long long rpmCallbackSize_t;
920
+ #endif
823
921
  static void*
824
922
  transaction_callback(const void* hd, const rpmCallbackType type,
825
- const unsigned long long amount, const unsigned long long total,
923
+ const rpmCallbackSize_t amount, const rpmCallbackSize_t total,
826
924
  fnpyKey key, rpmCallbackData data)
827
- #endif
828
925
  {
829
926
  VALUE trans = (VALUE)data;
830
927
  FD_t fdt;
@@ -859,6 +956,15 @@ transaction_callback(const void* hd, const rpmCallbackType type,
859
956
  return NULL;
860
957
  }
861
958
 
959
+ /*
960
+ * Performs the transaction.
961
+ * @param [Number] flag Transaction flags, default +RPM::TRANS_FLAG_NONE+
962
+ * @param [Number] filter Transaction filter, default +RPM::PROB_FILTER_NONE+
963
+ * @example
964
+ * transaction.commit do |sig|
965
+ * end
966
+ * @yield [CallbackData] sig Transaction progress
967
+ */
862
968
  VALUE
863
969
  rpm_transaction_commit(int argc, VALUE* argv, VALUE trans)
864
970
  {
@@ -1020,6 +1126,9 @@ rpm_transaction_commit(int argc, VALUE* argv, VALUE trans)
1020
1126
  return Qnil; /* NOT REACHED */
1021
1127
  }
1022
1128
 
1129
+ /*
1130
+ * To abort the transaction. Database is not changed.
1131
+ */
1023
1132
  VALUE
1024
1133
  rpm_transaction_abort(VALUE trans)
1025
1134
  {
@@ -1190,8 +1299,9 @@ Init_rpm_transaction(void)
1190
1299
  rb_undef_method(rpm_cTransaction, "dup");
1191
1300
  rb_undef_method(rpm_cTransaction, "clone");
1192
1301
 
1193
- rpm_sCallbackData = rb_struct_define(NULL, "type", "key", "package",
1302
+ rpm_sCallbackData = rb_struct_define(NULL, "type", "key", "package",
1194
1303
  "amount", "total", NULL);
1304
+
1195
1305
  rb_define_const(rpm_mRPM, "CallbackData", rpm_sCallbackData);
1196
1306
 
1197
1307
  rpm_sProblem = rb_struct_define(NULL, "type", "key", "package",
@@ -159,6 +159,10 @@ rpm_obsolete_new(const char* name, VALUE version, int flags, VALUE target)
159
159
  return obso;
160
160
  }
161
161
 
162
+ /*
163
+ * @param [Package, Dependency, Version] other
164
+ * @return [Boolean] true if +other+ satisfies this dependency
165
+ */
162
166
  VALUE
163
167
  rpm_dependency_is_satisfy(VALUE dep,VALUE other)
164
168
  {
@@ -209,30 +213,43 @@ rpm_dependency_is_satisfy(VALUE dep,VALUE other)
209
213
  return Qfalse;
210
214
  }
211
215
 
216
+ /*
217
+ * @return [String] dependency name
218
+ */
212
219
  VALUE
213
220
  rpm_dependency_get_name(VALUE dep)
214
221
  {
215
222
  return rb_ivar_get(dep, id_name);
216
223
  }
217
224
 
225
+ /*
226
+ * @return [String] dependency version
227
+ */
218
228
  VALUE
219
229
  rpm_dependency_get_version(VALUE dep)
220
230
  {
221
231
  return rb_ivar_get(dep, id_ver);
222
232
  }
223
233
 
234
+ /*
235
+ * @return [Number] dependency flags
236
+ */
224
237
  VALUE
225
238
  rpm_dependency_get_flags(VALUE dep)
226
239
  {
227
240
  return rb_ivar_get(dep, id_flags);
228
241
  }
229
242
 
243
+ /*
244
+ * @return [Package] package this dependency belongs to
245
+ */
230
246
  VALUE
231
247
  rpm_dependency_get_owner(VALUE dep)
232
248
  {
233
249
  return rb_ivar_get(dep, id_owner);
234
250
  }
235
251
 
252
+
236
253
  VALUE
237
254
  rpm_dependency_get_nametag(VALUE dep)
238
255
  {
@@ -251,24 +268,36 @@ rpm_dependency_get_flagstag(VALUE dep)
251
268
  return rb_ivar_get(dep, id_flagstag);
252
269
  }
253
270
 
271
+ /*
272
+ * @return [Boolean] true if '<' or '=<' are used to compare the version
273
+ */
254
274
  VALUE
255
275
  rpm_dependency_is_lt(VALUE dep)
256
276
  {
257
277
  return (NUM2INT(rb_ivar_get(dep, id_flags)) & RPMSENSE_LESS) ? Qtrue : Qfalse;
258
278
  }
259
279
 
280
+ /*
281
+ * @return [Boolean] true if '>' or '>=' are used to compare the version
282
+ */
260
283
  VALUE
261
284
  rpm_dependency_is_gt(VALUE dep)
262
285
  {
263
286
  return (NUM2INT(rb_ivar_get(dep, id_flags)) & RPMSENSE_GREATER) ? Qtrue : Qfalse;
264
287
  }
265
288
 
289
+ /*
290
+ * @return [Boolean] true if '=', '=<' or '>=' are used to compare the version
291
+ */
266
292
  VALUE
267
293
  rpm_dependency_is_eq(VALUE dep)
268
294
  {
269
295
  return (NUM2INT(rb_ivar_get(dep, id_flags)) & RPMSENSE_EQUAL) ? Qtrue : Qfalse;
270
296
  }
271
297
 
298
+ /*
299
+ * @return [Boolean] true if '=<' is used to compare the version
300
+ */
272
301
  VALUE
273
302
  rpm_dependency_is_le(VALUE dep)
274
303
  {
@@ -276,6 +305,9 @@ rpm_dependency_is_le(VALUE dep)
276
305
  return ((flags & RPMSENSE_LESS) && (flags & RPMSENSE_EQUAL)) ? Qtrue : Qfalse;
277
306
  }
278
307
 
308
+ /*
309
+ * @return [Boolean] true if '>=' is used to compare the version
310
+ */
279
311
  VALUE
280
312
  rpm_dependency_is_ge(VALUE dep)
281
313
  {
@@ -283,6 +315,9 @@ rpm_dependency_is_ge(VALUE dep)
283
315
  return ((flags & RPMSENSE_GREATER) && (flags & RPMSENSE_EQUAL)) ? Qtrue : Qfalse;
284
316
  }
285
317
 
318
+ /*
319
+ * @return [Boolean] true if this is a pre-requires
320
+ */
286
321
  VALUE
287
322
  rpm_require_is_pre(VALUE req)
288
323
  {
@@ -43,18 +43,18 @@ def check_db
43
43
  end
44
44
 
45
45
  def check_rpm
46
- return false unless check_db
47
46
  # Set things up manually
48
47
  dir_config("rpm")
49
48
  $libs = append_library($libs, 'rpmdb') if rpm_version < rpm_version([4,6,0])
50
49
  $libs = append_library($libs, 'rpm')
50
+ have_library('rpmbuild', 'getBuildTime')
51
51
  if rpm_version >= rpm_version([4,6,0])
52
52
  $defs << "-D_RPM_4_4_COMPAT"
53
53
  return true
54
54
  end
55
55
  if have_header('rpm/rpmlib.h') and
56
- have_library('rpmio') and
57
- have_library('rpmbuild', 'getBuildTime') then
56
+ check_db and
57
+ have_library('rpmio') then
58
58
  true
59
59
  else
60
60
  STDERR.puts "rpm library not found"
@@ -78,54 +78,84 @@ rpm_file_new(const char* path, const char* md5sum, const char* link_to,
78
78
  return file;
79
79
  }
80
80
 
81
+ /*
82
+ * @return [String] file path
83
+ */
81
84
  VALUE
82
85
  rpm_file_get_path(VALUE file)
83
86
  {
84
87
  return rb_ivar_get(file, id_path);
85
88
  }
86
89
 
90
+ /*
91
+ * @return [String] md5sum as string
92
+ */
87
93
  VALUE
88
94
  rpm_file_get_md5sum(VALUE file)
89
95
  {
90
96
  return rb_ivar_get(file, id_md5sum);
91
97
  }
92
98
 
99
+ /*
100
+ * @return [String] Path to the destination if the file is a symbolic link
101
+ * @note
102
+ * This path is sometimes relative. To convert an absolute path from relative path:
103
+ * File.expand_path (file.link_to, File.dirname (file.path))
104
+ */
93
105
  VALUE
94
106
  rpm_file_get_link_to(VALUE file)
95
107
  {
96
108
  return rb_ivar_get(file, id_link_to);
97
109
  }
98
110
 
111
+ /*
112
+ * @return [Number] File size
113
+ */
99
114
  VALUE
100
115
  rpm_file_get_size(VALUE file)
101
116
  {
102
117
  return rb_ivar_get(file, id_size);
103
118
  }
104
119
 
120
+ /*
121
+ * @return [Time] File modification time.
122
+ */
105
123
  VALUE
106
124
  rpm_file_get_mtime(VALUE file)
107
125
  {
108
126
  return rb_ivar_get(file, id_mtime);
109
127
  }
110
128
 
129
+ /*
130
+ * @return [String] File owner. Nil may be returned.
131
+ */
111
132
  VALUE
112
133
  rpm_file_get_owner(VALUE file)
113
134
  {
114
135
  return rb_ivar_get(file, id_owner);
115
136
  }
116
137
 
138
+ /*
139
+ * @return [String] Group that owns the file. Nil may be returned.
140
+ */
117
141
  VALUE
118
142
  rpm_file_get_group(VALUE file)
119
143
  {
120
144
  return rb_ivar_get(file, id_group);
121
145
  }
122
146
 
147
+ /*
148
+ * @return [Number] Device type of the file
149
+ */
123
150
  VALUE
124
151
  rpm_file_get_rdev(VALUE file)
125
152
  {
126
153
  return rb_ivar_get(file, id_rdev);
127
154
  }
128
155
 
156
+ /*
157
+ * @return [Number] File permissions
158
+ */
129
159
  VALUE
130
160
  rpm_file_get_mode(VALUE file)
131
161
  {
@@ -144,24 +174,36 @@ rpm_file_get_state(VALUE file)
144
174
  return rb_ivar_get(file, id_state);
145
175
  }
146
176
 
177
+ /*
178
+ * @return [Boolean] True if the file is a symbolic link
179
+ */
147
180
  VALUE
148
181
  rpm_file_is_symlink(VALUE file)
149
182
  {
150
183
  return NIL_P(rb_ivar_get(file, id_link_to)) ? Qfalse : Qtrue;
151
184
  }
152
185
 
186
+ /*
187
+ * @return [Boolean] True if the file is marked as a configuration file
188
+ */
153
189
  VALUE
154
190
  rpm_file_is_config(VALUE file)
155
191
  {
156
192
  return (NUM2INT(rb_ivar_get(file, id_attr)) & RPMFILE_CONFIG) ? Qtrue : Qfalse;
157
193
  }
158
194
 
195
+ /*
196
+ * @return [Boolean] True if the file is marked as documentation
197
+ */
159
198
  VALUE
160
199
  rpm_file_is_doc(VALUE file)
161
200
  {
162
201
  return (NUM2INT(rb_ivar_get(file, id_attr)) & RPMFILE_DOC) ? Qtrue : Qfalse;
163
202
  }
164
203
 
204
+ /*
205
+ * @return [Boolean] True if the file is marked as do not use
206
+ */
165
207
  VALUE
166
208
  rpm_file_is_donotuse(VALUE file)
167
209
  {
@@ -172,48 +214,86 @@ rpm_file_is_donotuse(VALUE file)
172
214
  #endif
173
215
  }
174
216
 
217
+ /*
218
+ * @return [Boolean] True if the file is marked that can be missing on disk
219
+ *
220
+ * This modifier is used for files or links that are created during the %post scripts
221
+ * but will need to be removed if the package is removed
222
+ */
175
223
  VALUE
176
224
  rpm_file_is_missingok(VALUE file)
177
225
  {
178
226
  return (NUM2INT(rb_ivar_get(file, id_attr)) & RPMFILE_MISSINGOK) ? Qtrue : Qfalse;
179
227
  }
180
228
 
229
+ /*
230
+ * @return [Boolean] True if the file is marked as configuration not to be replaced
231
+ *
232
+ * This flag is used to protect local modifications.
233
+ * If used, the file will not overwrite an existing file that has been modified.
234
+ * If the file has not been modified on disk, the rpm command will overwrite the file. But,
235
+ * if the file has been modified on disk, the rpm command will copy the new file with an extra
236
+ * file-name extension of .rpmnew.
237
+ */
181
238
  VALUE
182
239
  rpm_file_is_noreplace(VALUE file)
183
240
  {
184
241
  return (NUM2INT(rb_ivar_get(file, id_attr)) & RPMFILE_NOREPLACE) ? Qtrue : Qfalse;
185
242
  }
186
243
 
244
+ /*
245
+ * @return [Boolean] True if the file is marked as a spec file
246
+ */
187
247
  VALUE
188
248
  rpm_file_is_specfile(VALUE file)
189
249
  {
190
250
  return (NUM2INT(rb_ivar_get(file, id_attr)) & RPMFILE_SPECFILE) ? Qtrue : Qfalse;
191
251
  }
192
252
 
253
+ /*
254
+ * @return [Boolean] True if the file is marked as ghost
255
+ *
256
+ * This flag indicates the file should not be included in the package.
257
+ * It can be used to name the needed attributes for a file that the program, when installed,
258
+ * will create.
259
+ * For example, you may want to ensure that a program’s log file has certain attributes.
260
+ */
193
261
  VALUE
194
262
  rpm_file_is_ghost(VALUE file)
195
263
  {
196
264
  return (NUM2INT(rb_ivar_get(file, id_attr)) & RPMFILE_GHOST) ? Qtrue : Qfalse;
197
265
  }
198
266
 
267
+ /*
268
+ * @return [Boolean] True if the file is a license
269
+ */
199
270
  VALUE
200
271
  rpm_file_is_license(VALUE file)
201
272
  {
202
273
  return (NUM2INT(rb_ivar_get(file, id_attr)) & RPMFILE_LICENSE) ? Qtrue : Qfalse;
203
274
  }
204
275
 
276
+ /*
277
+ * @return [Boolean] True if the file is a README
278
+ */
205
279
  VALUE
206
280
  rpm_file_is_readme(VALUE file)
207
281
  {
208
282
  return (NUM2INT(rb_ivar_get(file, id_attr)) & RPMFILE_README) ? Qtrue : Qfalse;
209
283
  }
210
284
 
285
+ /*
286
+ * @return [Boolean] True if the file is listed in the exlude section
287
+ */
211
288
  VALUE
212
289
  rpm_file_is_exclude(VALUE file)
213
290
  {
214
291
  return (NUM2INT(rb_ivar_get(file, id_attr)) & RPMFILE_EXCLUDE) ? Qtrue : Qfalse;
215
292
  }
216
293
 
294
+ /*
295
+ * @return [Boolean] True if the file is replaced during installation
296
+ */
217
297
  VALUE
218
298
  rpm_file_is_replaced(VALUE file)
219
299
  {
@@ -221,6 +301,9 @@ rpm_file_is_replaced(VALUE file)
221
301
  == RPMFILE_STATE_REPLACED) ? Qtrue : Qfalse;
222
302
  }
223
303
 
304
+ /*
305
+ * @return [Boolean] True if the file is not installed
306
+ */
224
307
  VALUE
225
308
  rpm_file_is_notinstalled(VALUE file)
226
309
  {
@@ -228,6 +311,9 @@ rpm_file_is_notinstalled(VALUE file)
228
311
  == RPMFILE_STATE_NOTINSTALLED) ? Qtrue : Qfalse;
229
312
  }
230
313
 
314
+ /*
315
+ * @return [Boolean] True if the file is shared over the network
316
+ */
231
317
  VALUE
232
318
  rpm_file_is_netshared(VALUE file)
233
319
  {