taglib-ruby 1.0.0 → 1.1.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.
- checksums.yaml +4 -4
- data/.rubocop.yml +33 -0
- data/.yardopts +1 -1
- data/{CHANGES.md → CHANGELOG.md} +35 -14
- data/Gemfile +2 -0
- data/Guardfile +4 -2
- data/README.md +56 -38
- data/Rakefile +8 -8
- data/docs/taglib/aiff.rb +0 -3
- data/docs/taglib/base.rb +0 -4
- data/docs/taglib/flac.rb +1 -3
- data/docs/taglib/id3v2.rb +1 -1
- data/docs/taglib/mp4.rb +2 -4
- data/docs/taglib/mpeg.rb +0 -1
- data/docs/taglib/ogg.rb +0 -4
- data/docs/taglib/vorbis.rb +0 -1
- data/docs/taglib/wav.rb +0 -4
- data/ext/extconf_common.rb +24 -28
- data/ext/taglib_aiff/extconf.rb +2 -0
- data/ext/taglib_aiff/taglib_aiff_wrap.cxx +217 -178
- data/ext/taglib_base/extconf.rb +2 -0
- data/ext/taglib_base/includes.i +25 -0
- data/ext/taglib_base/taglib_base.i +18 -0
- data/ext/taglib_base/taglib_base_wrap.cxx +233 -191
- data/ext/taglib_flac/extconf.rb +2 -0
- data/ext/taglib_flac/taglib_flac.i +7 -0
- data/ext/taglib_flac/taglib_flac_wrap.cxx +235 -189
- data/ext/taglib_flac_picture/extconf.rb +2 -0
- data/ext/taglib_flac_picture/taglib_flac_picture_wrap.cxx +210 -168
- data/ext/taglib_id3v1/extconf.rb +2 -0
- data/ext/taglib_id3v1/taglib_id3v1_wrap.cxx +223 -182
- data/ext/taglib_id3v2/extconf.rb +2 -0
- data/ext/taglib_id3v2/taglib_id3v2.i +17 -0
- data/ext/taglib_id3v2/taglib_id3v2_wrap.cxx +2922 -993
- data/ext/taglib_mp4/extconf.rb +2 -0
- data/ext/taglib_mp4/taglib_mp4_wrap.cxx +295 -260
- data/ext/taglib_mpeg/extconf.rb +2 -0
- data/ext/taglib_mpeg/taglib_mpeg_wrap.cxx +243 -206
- data/ext/taglib_ogg/extconf.rb +2 -0
- data/ext/taglib_ogg/taglib_ogg_wrap.cxx +214 -171
- data/ext/taglib_vorbis/extconf.rb +2 -0
- data/ext/taglib_vorbis/taglib_vorbis_wrap.cxx +217 -178
- data/ext/taglib_wav/extconf.rb +2 -0
- data/ext/taglib_wav/taglib_wav_wrap.cxx +217 -178
- data/lib/taglib/aiff.rb +2 -0
- data/lib/taglib/base.rb +3 -1
- data/lib/taglib/flac.rb +2 -0
- data/lib/taglib/id3v1.rb +2 -0
- data/lib/taglib/id3v2.rb +2 -0
- data/lib/taglib/mp4.rb +10 -13
- data/lib/taglib/mpeg.rb +2 -0
- data/lib/taglib/ogg.rb +2 -0
- data/lib/taglib/version.rb +4 -2
- data/lib/taglib/vorbis.rb +2 -0
- data/lib/taglib/wav.rb +2 -1
- data/lib/taglib.rb +4 -3
- data/taglib-ruby.gemspec +165 -162
- data/tasks/docs_coverage.rake +10 -8
- data/tasks/ext.rake +26 -25
- data/tasks/gemspec_check.rake +7 -5
- data/tasks/swig.rake +10 -11
- data/test/aiff_examples_test.rb +8 -13
- data/test/aiff_file_test.rb +29 -29
- data/test/aiff_file_write_test.rb +19 -20
- data/test/base_test.rb +4 -2
- data/test/data/add-relative-volume.cpp +7 -3
- data/test/data/flac-create.cpp +15 -5
- data/test/data/flac_nopic.flac +0 -0
- data/test/data/get_picture_data.cpp +5 -1
- data/test/data/id3v1-create.cpp +6 -3
- data/test/data/mp4-create.cpp +12 -4
- data/test/data/vorbis-create.cpp +12 -5
- data/test/data/wav-create.cpp +18 -3
- data/test/file_test.rb +7 -5
- data/test/fileref_open_test.rb +12 -10
- data/test/fileref_properties_test.rb +6 -4
- data/test/fileref_write_test.rb +14 -13
- data/test/flac_file_test.rb +32 -27
- data/test/flac_file_write_test.rb +17 -18
- data/test/flac_picture_memory_test.rb +39 -0
- data/test/helper.rb +3 -1
- data/test/id3v1_genres_test.rb +14 -12
- data/test/id3v1_tag_test.rb +7 -5
- data/test/id3v2_frames_test.rb +98 -34
- data/test/id3v2_header_test.rb +14 -13
- data/test/id3v2_memory_test.rb +21 -20
- data/test/id3v2_relative_volume_test.rb +11 -9
- data/test/id3v2_tag_test.rb +16 -14
- data/test/id3v2_unicode_test.rb +12 -10
- data/test/id3v2_unknown_frames_test.rb +7 -5
- data/test/id3v2_write_test.rb +28 -29
- data/test/mp4_file_test.rb +27 -26
- data/test/mp4_file_write_test.rb +12 -13
- data/test/mp4_items_test.rb +78 -79
- data/test/mpeg_file_test.rb +32 -30
- data/test/tag_test.rb +5 -3
- data/test/unicode_filename_test.rb +7 -7
- data/test/vorbis_file_test.rb +14 -12
- data/test/vorbis_tag_test.rb +46 -44
- data/test/wav_examples_test.rb +8 -16
- data/test/wav_file_test.rb +29 -29
- data/test/wav_file_write_test.rb +22 -23
- metadata +26 -23
@@ -1,6 +1,6 @@
|
|
1
1
|
/* ----------------------------------------------------------------------------
|
2
2
|
* This file was automatically generated by SWIG (http://www.swig.org).
|
3
|
-
* Version
|
3
|
+
* Version 4.0.2
|
4
4
|
*
|
5
5
|
* This file is not intended to be easily readable and contains a number of
|
6
6
|
* coding conventions designed to improve portability and efficiency. Do not make
|
@@ -11,7 +11,11 @@
|
|
11
11
|
static void free_taglib_mp4_file(void *ptr);
|
12
12
|
|
13
13
|
|
14
|
+
|
15
|
+
#ifndef SWIGRUBY
|
14
16
|
#define SWIGRUBY
|
17
|
+
#endif
|
18
|
+
|
15
19
|
|
16
20
|
|
17
21
|
#ifdef __cplusplus
|
@@ -104,9 +108,11 @@ template <typename T> T SwigValueInit() {
|
|
104
108
|
#endif
|
105
109
|
|
106
110
|
/* exporting methods */
|
107
|
-
#if (__GNUC__
|
108
|
-
#
|
109
|
-
#
|
111
|
+
#if defined(__GNUC__)
|
112
|
+
# if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
|
113
|
+
# ifndef GCC_HASCLASSVISIBILITY
|
114
|
+
# define GCC_HASCLASSVISIBILITY
|
115
|
+
# endif
|
110
116
|
# endif
|
111
117
|
#endif
|
112
118
|
|
@@ -226,9 +232,11 @@ template <typename T> T SwigValueInit() {
|
|
226
232
|
#endif
|
227
233
|
|
228
234
|
/* exporting methods */
|
229
|
-
#if (__GNUC__
|
230
|
-
#
|
231
|
-
#
|
235
|
+
#if defined(__GNUC__)
|
236
|
+
# if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
|
237
|
+
# ifndef GCC_HASCLASSVISIBILITY
|
238
|
+
# define GCC_HASCLASSVISIBILITY
|
239
|
+
# endif
|
232
240
|
# endif
|
233
241
|
#endif
|
234
242
|
|
@@ -326,6 +334,7 @@ template <typename T> T SwigValueInit() {
|
|
326
334
|
/* Flags for pointer conversions */
|
327
335
|
#define SWIG_POINTER_DISOWN 0x1
|
328
336
|
#define SWIG_CAST_NEW_MEMORY 0x2
|
337
|
+
#define SWIG_POINTER_NO_NULL 0x4
|
329
338
|
|
330
339
|
/* Flags for new pointer objects */
|
331
340
|
#define SWIG_POINTER_OWN 0x1
|
@@ -778,16 +787,16 @@ SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
|
|
778
787
|
char d = *(c++);
|
779
788
|
unsigned char uu;
|
780
789
|
if ((d >= '0') && (d <= '9'))
|
781
|
-
uu = ((d - '0') << 4);
|
790
|
+
uu = (unsigned char)((d - '0') << 4);
|
782
791
|
else if ((d >= 'a') && (d <= 'f'))
|
783
|
-
uu = ((d - ('a'-10)) << 4);
|
792
|
+
uu = (unsigned char)((d - ('a'-10)) << 4);
|
784
793
|
else
|
785
794
|
return (char *) 0;
|
786
795
|
d = *(c++);
|
787
796
|
if ((d >= '0') && (d <= '9'))
|
788
|
-
uu |= (d - '0');
|
797
|
+
uu |= (unsigned char)(d - '0');
|
789
798
|
else if ((d >= 'a') && (d <= 'f'))
|
790
|
-
uu |= (d - ('a'-10));
|
799
|
+
uu |= (unsigned char)(d - ('a'-10));
|
791
800
|
else
|
792
801
|
return (char *) 0;
|
793
802
|
*u = uu;
|
@@ -964,42 +973,53 @@ SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
|
|
964
973
|
#ifndef RSTRUCT_PTR
|
965
974
|
# define RSTRUCT_PTR(x) RSTRUCT(x)->ptr
|
966
975
|
#endif
|
976
|
+
#ifndef RTYPEDDATA_P
|
977
|
+
# define RTYPEDDATA_P(x) (TYPE(x) != T_DATA)
|
978
|
+
#endif
|
967
979
|
|
968
980
|
|
969
981
|
|
970
982
|
/*
|
971
|
-
*
|
972
|
-
*
|
983
|
+
* The following macros are used for providing the correct type of a
|
984
|
+
* function pointer to the Ruby C API.
|
985
|
+
* Starting with Ruby 2.7 (corresponding to RB_METHOD_DEFINITION_DECL being
|
986
|
+
* defined) these macros act transparently due to Ruby's moving away from
|
987
|
+
* ANYARGS and instead employing strict function signatures.
|
988
|
+
*
|
989
|
+
* Note: In case of C (not C++) the macros are transparent even before
|
990
|
+
* Ruby 2.7 due to the fact that the Ruby C API used function declarators
|
991
|
+
* with empty parentheses, which allows for an unspecified number of
|
992
|
+
* arguments.
|
993
|
+
*
|
994
|
+
* PROTECTFUNC(f) is used for the function pointer argument of the Ruby
|
995
|
+
* C API function rb_protect().
|
973
996
|
*
|
974
|
-
* VALUEFUNC(f) is
|
975
|
-
*
|
976
|
-
* like rb_define_method() and rb_define_singleton_method().
|
997
|
+
* VALUEFUNC(f) is used for the function pointer argument(s) of Ruby C API
|
998
|
+
* functions like rb_define_method() and rb_define_singleton_method().
|
977
999
|
*
|
978
|
-
* VOIDFUNC(f) is
|
979
|
-
*
|
980
|
-
*
|
1000
|
+
* VOIDFUNC(f) is used to typecast a C function that implements either
|
1001
|
+
* the "mark" or "free" stuff for a Ruby Data object, so that it can be
|
1002
|
+
* passed as an argument to Ruby C API functions like Data_Wrap_Struct()
|
981
1003
|
* and Data_Make_Struct().
|
1004
|
+
*
|
1005
|
+
* SWIG_RUBY_VOID_ANYARGS_FUNC(f) is used for the function pointer
|
1006
|
+
* argument(s) of Ruby C API functions like rb_define_virtual_variable().
|
1007
|
+
*
|
1008
|
+
* SWIG_RUBY_INT_ANYARGS_FUNC(f) is used for the function pointer
|
1009
|
+
* argument(s) of Ruby C API functions like st_foreach().
|
982
1010
|
*/
|
983
|
-
|
984
|
-
#
|
985
|
-
#
|
986
|
-
#
|
987
|
-
#
|
988
|
-
#
|
989
|
-
# else
|
990
|
-
# ifndef ANYARGS /* These definitions should work for Ruby 1.6 */
|
991
|
-
# define PROTECTFUNC(f) ((VALUE (*)()) f)
|
992
|
-
# define VALUEFUNC(f) ((VALUE (*)()) f)
|
993
|
-
# define VOIDFUNC(f) ((RUBY_DATA_FUNC) f)
|
994
|
-
# else /* These definitions should work for Ruby 1.7+ */
|
995
|
-
# define PROTECTFUNC(f) ((VALUE (*)(VALUE)) f)
|
996
|
-
# define VALUEFUNC(f) ((VALUE (*)(ANYARGS)) f)
|
997
|
-
# define VOIDFUNC(f) ((RUBY_DATA_FUNC) f)
|
998
|
-
# endif
|
999
|
-
# endif
|
1011
|
+
#if defined(__cplusplus) && !defined(RB_METHOD_DEFINITION_DECL)
|
1012
|
+
# define PROTECTFUNC(f) ((VALUE (*)(VALUE)) f)
|
1013
|
+
# define VALUEFUNC(f) ((VALUE (*)(ANYARGS)) f)
|
1014
|
+
# define VOIDFUNC(f) ((RUBY_DATA_FUNC) f)
|
1015
|
+
# define SWIG_RUBY_VOID_ANYARGS_FUNC(f) ((void (*)(ANYARGS))(f))
|
1016
|
+
# define SWIG_RUBY_INT_ANYARGS_FUNC(f) ((int (*)(ANYARGS))(f))
|
1000
1017
|
#else
|
1018
|
+
# define PROTECTFUNC(f) (f)
|
1001
1019
|
# define VALUEFUNC(f) (f)
|
1002
1020
|
# define VOIDFUNC(f) (f)
|
1021
|
+
# define SWIG_RUBY_VOID_ANYARGS_FUNC(f) (f)
|
1022
|
+
# define SWIG_RUBY_INT_ANYARGS_FUNC(f) (f)
|
1003
1023
|
#endif
|
1004
1024
|
|
1005
1025
|
/* Don't use for expressions have side effect */
|
@@ -1187,7 +1207,7 @@ void Ruby_Format_OverloadedError(
|
|
1187
1207
|
/* -----------------------------------------------------------------------------
|
1188
1208
|
* rubytracking.swg
|
1189
1209
|
*
|
1190
|
-
* This file contains support for tracking mappings from
|
1210
|
+
* This file contains support for tracking mappings from
|
1191
1211
|
* Ruby objects to C++ objects. This functionality is needed
|
1192
1212
|
* to implement mark functions for Ruby's mark and sweep
|
1193
1213
|
* garbage collector.
|
@@ -1197,6 +1217,11 @@ void Ruby_Format_OverloadedError(
|
|
1197
1217
|
extern "C" {
|
1198
1218
|
#endif
|
1199
1219
|
|
1220
|
+
#if !defined(ST_DATA_T_DEFINED)
|
1221
|
+
/* Needs to be explicitly included for Ruby 1.8 and earlier */
|
1222
|
+
#include <st.h>
|
1223
|
+
#endif
|
1224
|
+
|
1200
1225
|
/* Ruby 1.8 actually assumes the first case. */
|
1201
1226
|
#if SIZEOF_VOIDP == SIZEOF_LONG
|
1202
1227
|
# define SWIG2NUM(v) LONG2NUM((unsigned long)v)
|
@@ -1208,109 +1233,69 @@ extern "C" {
|
|
1208
1233
|
# error sizeof(void*) is not the same as long or long long
|
1209
1234
|
#endif
|
1210
1235
|
|
1211
|
-
|
1212
|
-
|
1213
|
-
structs to Ruby Objects.
|
1236
|
+
/* Global hash table to store Trackings from C/C++
|
1237
|
+
structs to Ruby Objects.
|
1214
1238
|
*/
|
1215
|
-
static
|
1239
|
+
static st_table* swig_ruby_trackings = NULL;
|
1240
|
+
|
1241
|
+
static VALUE swig_ruby_trackings_count(ID id, VALUE *var) {
|
1242
|
+
return SWIG2NUM(swig_ruby_trackings->num_entries);
|
1243
|
+
}
|
1216
1244
|
|
1217
|
-
/* Global variable that stores a reference to the ruby
|
1218
|
-
hash table delete function. */
|
1219
|
-
static ID swig_ruby_hash_delete;
|
1220
1245
|
|
1221
|
-
/* Setup a
|
1246
|
+
/* Setup a hash table to store Trackings */
|
1222
1247
|
SWIGRUNTIME void SWIG_RubyInitializeTrackings(void) {
|
1223
|
-
/* Create a
|
1248
|
+
/* Create a hash table to store Trackings from C++
|
1224
1249
|
objects to Ruby objects. */
|
1225
1250
|
|
1226
|
-
/* Try to see if some other .so has already created a
|
1251
|
+
/* Try to see if some other .so has already created a
|
1227
1252
|
tracking hash table, which we keep hidden in an instance var
|
1228
1253
|
in the SWIG module.
|
1229
1254
|
This is done to allow multiple DSOs to share the same
|
1230
1255
|
tracking table.
|
1231
1256
|
*/
|
1232
|
-
|
1257
|
+
VALUE trackings_value = Qnil;
|
1258
|
+
/* change the variable name so that we can mix modules
|
1259
|
+
compiled with older SWIG's - this used to be called "@__trackings__" */
|
1260
|
+
ID trackings_id = rb_intern( "@__safetrackings__" );
|
1233
1261
|
VALUE verbose = rb_gv_get("VERBOSE");
|
1234
1262
|
rb_gv_set("VERBOSE", Qfalse);
|
1235
|
-
|
1263
|
+
trackings_value = rb_ivar_get( _mSWIG, trackings_id );
|
1236
1264
|
rb_gv_set("VERBOSE", verbose);
|
1237
1265
|
|
1238
|
-
/*
|
1239
|
-
|
1240
|
-
|
1241
|
-
|
1242
|
-
|
1243
|
-
|
1244
|
-
|
1245
|
-
|
1246
|
-
|
1247
|
-
|
1248
|
-
}
|
1249
|
-
|
1250
|
-
/* Get a Ruby number to reference a pointer */
|
1251
|
-
SWIGRUNTIME VALUE SWIG_RubyPtrToReference(void* ptr) {
|
1252
|
-
/* We cast the pointer to an unsigned long
|
1253
|
-
and then store a reference to it using
|
1254
|
-
a Ruby number object. */
|
1255
|
-
|
1256
|
-
/* Convert the pointer to a Ruby number */
|
1257
|
-
return SWIG2NUM(ptr);
|
1258
|
-
}
|
1259
|
-
|
1260
|
-
/* Get a Ruby number to reference an object */
|
1261
|
-
SWIGRUNTIME VALUE SWIG_RubyObjectToReference(VALUE object) {
|
1262
|
-
/* We cast the object to an unsigned long
|
1263
|
-
and then store a reference to it using
|
1264
|
-
a Ruby number object. */
|
1265
|
-
|
1266
|
-
/* Convert the Object to a Ruby number */
|
1267
|
-
return SWIG2NUM(object);
|
1268
|
-
}
|
1269
|
-
|
1270
|
-
/* Get a Ruby object from a previously stored reference */
|
1271
|
-
SWIGRUNTIME VALUE SWIG_RubyReferenceToObject(VALUE reference) {
|
1272
|
-
/* The provided Ruby number object is a reference
|
1273
|
-
to the Ruby object we want.*/
|
1266
|
+
/* The trick here is that we have to store the hash table
|
1267
|
+
pointer in a Ruby variable. We do not want Ruby's GC to
|
1268
|
+
treat this pointer as a Ruby object, so we convert it to
|
1269
|
+
a Ruby numeric value. */
|
1270
|
+
if (trackings_value == Qnil) {
|
1271
|
+
/* No, it hasn't. Create one ourselves */
|
1272
|
+
swig_ruby_trackings = st_init_numtable();
|
1273
|
+
rb_ivar_set( _mSWIG, trackings_id, SWIG2NUM(swig_ruby_trackings) );
|
1274
|
+
} else {
|
1275
|
+
swig_ruby_trackings = (st_table*)NUM2SWIG(trackings_value);
|
1276
|
+
}
|
1274
1277
|
|
1275
|
-
|
1276
|
-
|
1278
|
+
rb_define_virtual_variable("SWIG_TRACKINGS_COUNT",
|
1279
|
+
VALUEFUNC(swig_ruby_trackings_count),
|
1280
|
+
SWIG_RUBY_VOID_ANYARGS_FUNC((rb_gvar_setter_t*)NULL));
|
1277
1281
|
}
|
1278
1282
|
|
1279
1283
|
/* Add a Tracking from a C/C++ struct to a Ruby object */
|
1280
1284
|
SWIGRUNTIME void SWIG_RubyAddTracking(void* ptr, VALUE object) {
|
1281
|
-
/* In a Ruby hash table we store the pointer and
|
1282
|
-
the associated Ruby object. The trick here is
|
1283
|
-
that we cannot store the Ruby object directly - if
|
1284
|
-
we do then it cannot be garbage collected. So
|
1285
|
-
instead we typecast it as a unsigned long and
|
1286
|
-
convert it to a Ruby number object.*/
|
1287
|
-
|
1288
|
-
/* Get a reference to the pointer as a Ruby number */
|
1289
|
-
VALUE key = SWIG_RubyPtrToReference(ptr);
|
1290
|
-
|
1291
|
-
/* Get a reference to the Ruby object as a Ruby number */
|
1292
|
-
VALUE value = SWIG_RubyObjectToReference(object);
|
1293
|
-
|
1294
1285
|
/* Store the mapping to the global hash table. */
|
1295
|
-
|
1286
|
+
st_insert(swig_ruby_trackings, (st_data_t)ptr, object);
|
1296
1287
|
}
|
1297
1288
|
|
1298
1289
|
/* Get the Ruby object that owns the specified C/C++ struct */
|
1299
1290
|
SWIGRUNTIME VALUE SWIG_RubyInstanceFor(void* ptr) {
|
1300
|
-
/* Get a reference to the pointer as a Ruby number */
|
1301
|
-
VALUE key = SWIG_RubyPtrToReference(ptr);
|
1302
|
-
|
1303
1291
|
/* Now lookup the value stored in the global hash table */
|
1304
|
-
VALUE value
|
1305
|
-
|
1306
|
-
if (
|
1307
|
-
|
1292
|
+
VALUE value;
|
1293
|
+
|
1294
|
+
if (st_lookup(swig_ruby_trackings, (st_data_t)ptr, &value)) {
|
1295
|
+
return value;
|
1296
|
+
} else {
|
1308
1297
|
return Qnil;
|
1309
1298
|
}
|
1310
|
-
else {
|
1311
|
-
/* Convert this value to Ruby object */
|
1312
|
-
return SWIG_RubyReferenceToObject(value);
|
1313
|
-
}
|
1314
1299
|
}
|
1315
1300
|
|
1316
1301
|
/* Remove a Tracking from a C/C++ struct to a Ruby object. It
|
@@ -1318,25 +1303,39 @@ SWIGRUNTIME VALUE SWIG_RubyInstanceFor(void* ptr) {
|
|
1318
1303
|
since the same memory address may be reused later to create
|
1319
1304
|
a new object. */
|
1320
1305
|
SWIGRUNTIME void SWIG_RubyRemoveTracking(void* ptr) {
|
1321
|
-
/*
|
1322
|
-
|
1323
|
-
|
1324
|
-
/* Delete the object from the hash table by calling Ruby's
|
1325
|
-
do this we need to call the Hash.delete method.*/
|
1326
|
-
rb_funcall(swig_ruby_trackings, swig_ruby_hash_delete, 1, key);
|
1306
|
+
/* Delete the object from the hash table */
|
1307
|
+
st_delete(swig_ruby_trackings, (st_data_t *)&ptr, NULL);
|
1327
1308
|
}
|
1328
1309
|
|
1329
1310
|
/* This is a helper method that unlinks a Ruby object from its
|
1330
1311
|
underlying C++ object. This is needed if the lifetime of the
|
1331
|
-
Ruby object is longer than the C++ object */
|
1312
|
+
Ruby object is longer than the C++ object. */
|
1332
1313
|
SWIGRUNTIME void SWIG_RubyUnlinkObjects(void* ptr) {
|
1333
1314
|
VALUE object = SWIG_RubyInstanceFor(ptr);
|
1334
1315
|
|
1335
1316
|
if (object != Qnil) {
|
1317
|
+
// object might have the T_ZOMBIE type, but that's just
|
1318
|
+
// because the GC has flagged it as such for a deferred
|
1319
|
+
// destruction. Until then, it's still a T_DATA object.
|
1336
1320
|
DATA_PTR(object) = 0;
|
1337
1321
|
}
|
1338
1322
|
}
|
1339
1323
|
|
1324
|
+
/* This is a helper method that iterates over all the trackings
|
1325
|
+
passing the C++ object pointer and its related Ruby object
|
1326
|
+
to the passed callback function. */
|
1327
|
+
|
1328
|
+
/* Proxy method to abstract the internal trackings datatype */
|
1329
|
+
static int swig_ruby_internal_iterate_callback(st_data_t ptr, st_data_t obj, st_data_t meth) {
|
1330
|
+
((void (*) (void *, VALUE))meth)((void *)ptr, (VALUE)obj);
|
1331
|
+
return ST_CONTINUE;
|
1332
|
+
}
|
1333
|
+
|
1334
|
+
SWIGRUNTIME void SWIG_RubyIterateTrackings( void(*meth)(void* ptr, VALUE obj) ) {
|
1335
|
+
st_foreach(swig_ruby_trackings,
|
1336
|
+
SWIG_RUBY_INT_ANYARGS_FUNC(swig_ruby_internal_iterate_callback),
|
1337
|
+
(st_data_t)meth);
|
1338
|
+
}
|
1340
1339
|
|
1341
1340
|
#ifdef __cplusplus
|
1342
1341
|
}
|
@@ -1395,7 +1394,7 @@ SWIG_Ruby_AppendOutput(VALUE target, VALUE o) {
|
|
1395
1394
|
#define SWIG_ConvertPtrAndOwn(obj,pptr,type,flags,own) SWIG_Ruby_ConvertPtrAndOwn(obj, pptr, type, flags, own)
|
1396
1395
|
#define SWIG_NewPointerObj(ptr, type, flags) SWIG_Ruby_NewPointerObj(ptr, type, flags)
|
1397
1396
|
#define SWIG_AcquirePtr(ptr, own) SWIG_Ruby_AcquirePtr(ptr, own)
|
1398
|
-
#define swig_owntype
|
1397
|
+
#define swig_owntype swig_ruby_owntype
|
1399
1398
|
|
1400
1399
|
/* for raw packed data */
|
1401
1400
|
#define SWIG_ConvertPacked(obj, ptr, sz, ty) SWIG_Ruby_ConvertPacked(obj, ptr, sz, ty, flags)
|
@@ -1552,10 +1551,11 @@ SWIG_Ruby_NewPointerObj(void *ptr, swig_type_info *type, int flags)
|
|
1552
1551
|
swig_class *sklass;
|
1553
1552
|
VALUE klass;
|
1554
1553
|
VALUE obj;
|
1555
|
-
|
1554
|
+
|
1556
1555
|
if (!ptr)
|
1557
1556
|
return Qnil;
|
1558
|
-
|
1557
|
+
|
1558
|
+
assert(type);
|
1559
1559
|
if (type->clientdata) {
|
1560
1560
|
sklass = (swig_class *) type->clientdata;
|
1561
1561
|
|
@@ -1563,7 +1563,7 @@ SWIG_Ruby_NewPointerObj(void *ptr, swig_type_info *type, int flags)
|
|
1563
1563
|
track = sklass->trackObjects;
|
1564
1564
|
if (track) {
|
1565
1565
|
obj = SWIG_RubyInstanceFor(ptr);
|
1566
|
-
|
1566
|
+
|
1567
1567
|
/* Check the object's type and make sure it has the correct type.
|
1568
1568
|
It might not in cases where methods do things like
|
1569
1569
|
downcast methods. */
|
@@ -1595,7 +1595,7 @@ SWIG_Ruby_NewPointerObj(void *ptr, swig_type_info *type, int flags)
|
|
1595
1595
|
obj = Data_Wrap_Struct(klass, 0, 0, ptr);
|
1596
1596
|
}
|
1597
1597
|
rb_iv_set(obj, "@__swigtype__", rb_str_new2(type->name));
|
1598
|
-
|
1598
|
+
|
1599
1599
|
return obj;
|
1600
1600
|
}
|
1601
1601
|
|
@@ -1615,26 +1615,30 @@ SWIGRUNTIMEINLINE char *
|
|
1615
1615
|
SWIG_Ruby_MangleStr(VALUE obj)
|
1616
1616
|
{
|
1617
1617
|
VALUE stype = rb_iv_get(obj, "@__swigtype__");
|
1618
|
+
if (NIL_P(stype))
|
1619
|
+
return NULL;
|
1618
1620
|
return StringValuePtr(stype);
|
1619
1621
|
}
|
1620
1622
|
|
1621
1623
|
/* Acquire a pointer value */
|
1622
|
-
typedef
|
1623
|
-
|
1624
|
-
|
1625
|
-
|
1626
|
-
|
1627
|
-
|
1628
|
-
|
1629
|
-
|
1630
|
-
|
1631
|
-
|
1624
|
+
typedef struct {
|
1625
|
+
void (*datafree)(void *);
|
1626
|
+
int own;
|
1627
|
+
} swig_ruby_owntype;
|
1628
|
+
|
1629
|
+
SWIGRUNTIME swig_ruby_owntype
|
1630
|
+
SWIG_Ruby_AcquirePtr(VALUE obj, swig_ruby_owntype own) {
|
1631
|
+
swig_ruby_owntype oldown = {0, 0};
|
1632
|
+
if (TYPE(obj) == T_DATA && !RTYPEDDATA_P(obj)) {
|
1633
|
+
oldown.datafree = RDATA(obj)->dfree;
|
1634
|
+
RDATA(obj)->dfree = own.datafree;
|
1632
1635
|
}
|
1636
|
+
return oldown;
|
1633
1637
|
}
|
1634
1638
|
|
1635
1639
|
/* Convert a pointer value */
|
1636
1640
|
SWIGRUNTIME int
|
1637
|
-
SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags,
|
1641
|
+
SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags, swig_ruby_owntype *own)
|
1638
1642
|
{
|
1639
1643
|
char *c;
|
1640
1644
|
swig_cast_info *tc;
|
@@ -1642,16 +1646,20 @@ SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags,
|
|
1642
1646
|
|
1643
1647
|
/* Grab the pointer */
|
1644
1648
|
if (NIL_P(obj)) {
|
1645
|
-
|
1646
|
-
|
1649
|
+
if (ptr)
|
1650
|
+
*ptr = 0;
|
1651
|
+
return (flags & SWIG_POINTER_NO_NULL) ? SWIG_NullReferenceError : SWIG_OK;
|
1647
1652
|
} else {
|
1648
|
-
if (TYPE(obj) != T_DATA) {
|
1653
|
+
if (TYPE(obj) != T_DATA || (TYPE(obj) == T_DATA && RTYPEDDATA_P(obj))) {
|
1649
1654
|
return SWIG_ERROR;
|
1650
1655
|
}
|
1651
1656
|
Data_Get_Struct(obj, void, vptr);
|
1652
1657
|
}
|
1653
1658
|
|
1654
|
-
if (own)
|
1659
|
+
if (own) {
|
1660
|
+
own->datafree = RDATA(obj)->dfree;
|
1661
|
+
own->own = 0;
|
1662
|
+
}
|
1655
1663
|
|
1656
1664
|
/* Check to see if the input object is giving up ownership
|
1657
1665
|
of the underlying C struct or C++ object. If so then we
|
@@ -1686,8 +1694,6 @@ SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags,
|
|
1686
1694
|
/* The object has already been deleted */
|
1687
1695
|
return SWIG_ObjectPreviouslyDeletedError;
|
1688
1696
|
}
|
1689
|
-
*ptr = vptr;
|
1690
|
-
return SWIG_OK;
|
1691
1697
|
}
|
1692
1698
|
}
|
1693
1699
|
if ((c = SWIG_MangleStr(obj)) == NULL) {
|
@@ -1697,12 +1703,23 @@ SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags,
|
|
1697
1703
|
if (!tc) {
|
1698
1704
|
return SWIG_ERROR;
|
1699
1705
|
} else {
|
1700
|
-
|
1701
|
-
|
1702
|
-
|
1706
|
+
if (ptr) {
|
1707
|
+
if (tc->type == ty) {
|
1708
|
+
*ptr = vptr;
|
1709
|
+
} else {
|
1710
|
+
int newmemory = 0;
|
1711
|
+
*ptr = SWIG_TypeCast(tc, vptr, &newmemory);
|
1712
|
+
if (newmemory == SWIG_CAST_NEW_MEMORY) {
|
1713
|
+
assert(own); /* badly formed typemap which will lead to a memory leak - it must set and use own to delete *ptr */
|
1714
|
+
if (own)
|
1715
|
+
own->own = own->own | SWIG_CAST_NEW_MEMORY;
|
1716
|
+
}
|
1717
|
+
}
|
1718
|
+
}
|
1703
1719
|
}
|
1704
1720
|
} else {
|
1705
|
-
|
1721
|
+
if (ptr)
|
1722
|
+
*ptr = vptr;
|
1706
1723
|
}
|
1707
1724
|
|
1708
1725
|
return SWIG_OK;
|
@@ -1728,7 +1745,7 @@ SWIG_Ruby_NewPackedObj(void *ptr, int sz, swig_type_info *type) {
|
|
1728
1745
|
return rb_str_new2(result);
|
1729
1746
|
}
|
1730
1747
|
|
1731
|
-
/* Convert a packed
|
1748
|
+
/* Convert a packed pointer value */
|
1732
1749
|
SWIGRUNTIME int
|
1733
1750
|
SWIG_Ruby_ConvertPacked(VALUE obj, void *ptr, int sz, swig_type_info *ty) {
|
1734
1751
|
swig_cast_info *tc;
|
@@ -1864,7 +1881,7 @@ static VALUE mMP4;
|
|
1864
1881
|
#define SWIG_RUBY_THREAD_END_BLOCK
|
1865
1882
|
|
1866
1883
|
|
1867
|
-
#define SWIGVERSION
|
1884
|
+
#define SWIGVERSION 0x040002
|
1868
1885
|
#define SWIG_VERSION SWIGVERSION
|
1869
1886
|
|
1870
1887
|
|
@@ -1886,6 +1903,8 @@ using namespace TagLib::MP4;
|
|
1886
1903
|
|
1887
1904
|
#include <taglib/tstring.h>
|
1888
1905
|
#include <taglib/tstringlist.h>
|
1906
|
+
#include <taglib/tbytevector.h>
|
1907
|
+
#include <taglib/tbytevectorlist.h>
|
1889
1908
|
#include <taglib/tfile.h>
|
1890
1909
|
|
1891
1910
|
#if defined(HAVE_RUBY_ENCODING_H) && HAVE_RUBY_ENCODING_H
|
@@ -1955,6 +1974,28 @@ TagLib::StringList ruby_array_to_taglib_string_list(VALUE ary) {
|
|
1955
1974
|
return result;
|
1956
1975
|
}
|
1957
1976
|
|
1977
|
+
VALUE taglib_bytevectorlist_to_ruby_array(const TagLib::ByteVectorList & list) {
|
1978
|
+
VALUE ary = rb_ary_new2(list.size());
|
1979
|
+
for (TagLib::ByteVectorList::ConstIterator it = list.begin(); it != list.end(); it++) {
|
1980
|
+
VALUE s = taglib_bytevector_to_ruby_string(*it);
|
1981
|
+
rb_ary_push(ary, s);
|
1982
|
+
}
|
1983
|
+
return ary;
|
1984
|
+
}
|
1985
|
+
|
1986
|
+
TagLib::ByteVectorList ruby_array_to_taglib_bytevectorlist(VALUE ary) {
|
1987
|
+
TagLib::ByteVectorList result = TagLib::ByteVectorList();
|
1988
|
+
if (NIL_P(ary)) {
|
1989
|
+
return result;
|
1990
|
+
}
|
1991
|
+
for (long i = 0; i < RARRAY_LEN(ary); i++) {
|
1992
|
+
VALUE e = rb_ary_entry(ary, i);
|
1993
|
+
TagLib::ByteVector s = ruby_string_to_taglib_bytevector(e);
|
1994
|
+
result.append(s);
|
1995
|
+
}
|
1996
|
+
return result;
|
1997
|
+
}
|
1998
|
+
|
1958
1999
|
VALUE taglib_filename_to_ruby_string(TagLib::FileName filename) {
|
1959
2000
|
VALUE result;
|
1960
2001
|
#ifdef _WIN32
|
@@ -2058,15 +2099,16 @@ SWIG_From_int (int value)
|
|
2058
2099
|
|
2059
2100
|
|
2060
2101
|
SWIGINTERN VALUE
|
2061
|
-
SWIG_ruby_failed(
|
2102
|
+
SWIG_ruby_failed(VALUE SWIGUNUSEDPARM(arg1), VALUE SWIGUNUSEDPARM(arg2))
|
2062
2103
|
{
|
2063
2104
|
return Qnil;
|
2064
2105
|
}
|
2065
2106
|
|
2066
2107
|
|
2067
|
-
/*@SWIG:/usr/local/share/swig/
|
2068
|
-
SWIGINTERN VALUE SWIG_AUX_NUM2LONG(VALUE
|
2108
|
+
/*@SWIG:/usr/local/Cellar/swig/4.0.2/share/swig/4.0.2/ruby/rubyprimtypes.swg,19,%ruby_aux_method@*/
|
2109
|
+
SWIGINTERN VALUE SWIG_AUX_NUM2LONG(VALUE arg)
|
2069
2110
|
{
|
2111
|
+
VALUE *args = (VALUE *)arg;
|
2070
2112
|
VALUE obj = args[0];
|
2071
2113
|
VALUE type = TYPE(obj);
|
2072
2114
|
long *res = (long *)(args[1]);
|
@@ -2084,7 +2126,7 @@ SWIG_AsVal_long (VALUE obj, long* val)
|
|
2084
2126
|
VALUE a[2];
|
2085
2127
|
a[0] = obj;
|
2086
2128
|
a[1] = (VALUE)(&v);
|
2087
|
-
if (rb_rescue(
|
2129
|
+
if (rb_rescue(VALUEFUNC(SWIG_AUX_NUM2LONG), (VALUE)a, VALUEFUNC(SWIG_ruby_failed), 0) != Qnil) {
|
2088
2130
|
if (val) *val = v;
|
2089
2131
|
return SWIG_OK;
|
2090
2132
|
}
|
@@ -2152,7 +2194,7 @@ SWIG_AsCharPtrAndSize(VALUE obj, char** cptr, size_t* psize, int *alloc)
|
|
2152
2194
|
if (cptr) {
|
2153
2195
|
if (alloc) {
|
2154
2196
|
if (*alloc == SWIG_NEWOBJ) {
|
2155
|
-
*cptr = reinterpret_cast< char* >(memcpy(
|
2197
|
+
*cptr = reinterpret_cast< char* >(memcpy(new char[size], cstr, sizeof(char)*(size)));
|
2156
2198
|
} else {
|
2157
2199
|
*cptr = cstr;
|
2158
2200
|
*alloc = SWIG_OLDOBJ;
|
@@ -2180,9 +2222,10 @@ SWIG_AsCharPtrAndSize(VALUE obj, char** cptr, size_t* psize, int *alloc)
|
|
2180
2222
|
|
2181
2223
|
|
2182
2224
|
|
2183
|
-
/*@SWIG:/usr/local/share/swig/
|
2184
|
-
SWIGINTERN VALUE SWIG_AUX_NUM2ULONG(VALUE
|
2225
|
+
/*@SWIG:/usr/local/Cellar/swig/4.0.2/share/swig/4.0.2/ruby/rubyprimtypes.swg,19,%ruby_aux_method@*/
|
2226
|
+
SWIGINTERN VALUE SWIG_AUX_NUM2ULONG(VALUE arg)
|
2185
2227
|
{
|
2228
|
+
VALUE *args = (VALUE *)arg;
|
2186
2229
|
VALUE obj = args[0];
|
2187
2230
|
VALUE type = TYPE(obj);
|
2188
2231
|
unsigned long *res = (unsigned long *)(args[1]);
|
@@ -2200,7 +2243,7 @@ SWIG_AsVal_unsigned_SS_long (VALUE obj, unsigned long *val)
|
|
2200
2243
|
VALUE a[2];
|
2201
2244
|
a[0] = obj;
|
2202
2245
|
a[1] = (VALUE)(&v);
|
2203
|
-
if (rb_rescue(
|
2246
|
+
if (rb_rescue(VALUEFUNC(SWIG_AUX_NUM2ULONG), (VALUE)a, VALUEFUNC(SWIG_ruby_failed), 0) != Qnil) {
|
2204
2247
|
if (val) *val = v;
|
2205
2248
|
return SWIG_OK;
|
2206
2249
|
}
|
@@ -2257,9 +2300,16 @@ SWIG_AsVal_unsigned_SS_char (VALUE obj, unsigned char *val)
|
|
2257
2300
|
}
|
2258
2301
|
|
2259
2302
|
|
2260
|
-
|
2261
|
-
|
2303
|
+
#if defined(LLONG_MAX) && !defined(SWIG_LONG_LONG_AVAILABLE)
|
2304
|
+
# define SWIG_LONG_LONG_AVAILABLE
|
2305
|
+
#endif
|
2306
|
+
|
2307
|
+
|
2308
|
+
#ifdef SWIG_LONG_LONG_AVAILABLE
|
2309
|
+
/*@SWIG:/usr/local/Cellar/swig/4.0.2/share/swig/4.0.2/ruby/rubyprimtypes.swg,19,%ruby_aux_method@*/
|
2310
|
+
SWIGINTERN VALUE SWIG_AUX_NUM2LL(VALUE arg)
|
2262
2311
|
{
|
2312
|
+
VALUE *args = (VALUE *)arg;
|
2263
2313
|
VALUE obj = args[0];
|
2264
2314
|
VALUE type = TYPE(obj);
|
2265
2315
|
long long *res = (long long *)(args[1]);
|
@@ -2277,13 +2327,14 @@ SWIG_AsVal_long_SS_long (VALUE obj, long long *val)
|
|
2277
2327
|
VALUE a[2];
|
2278
2328
|
a[0] = obj;
|
2279
2329
|
a[1] = (VALUE)(&v);
|
2280
|
-
if (rb_rescue(
|
2330
|
+
if (rb_rescue(VALUEFUNC(SWIG_AUX_NUM2LL), (VALUE)a, VALUEFUNC(SWIG_ruby_failed), 0) != Qnil) {
|
2281
2331
|
if (val) *val = v;
|
2282
2332
|
return SWIG_OK;
|
2283
2333
|
}
|
2284
2334
|
}
|
2285
2335
|
return SWIG_TypeError;
|
2286
2336
|
}
|
2337
|
+
#endif
|
2287
2338
|
|
2288
2339
|
|
2289
2340
|
SWIGINTERN int
|
@@ -2313,11 +2364,13 @@ SWIG_From_unsigned_SS_char (unsigned char value)
|
|
2313
2364
|
}
|
2314
2365
|
|
2315
2366
|
|
2367
|
+
#ifdef SWIG_LONG_LONG_AVAILABLE
|
2316
2368
|
SWIGINTERNINLINE VALUE
|
2317
2369
|
SWIG_From_long_SS_long (long long value)
|
2318
2370
|
{
|
2319
2371
|
return LL2NUM(value);
|
2320
2372
|
}
|
2373
|
+
#endif
|
2321
2374
|
|
2322
2375
|
SWIGINTERN TagLib::MP4::Item *TagLib_MP4_Item_from_bool(bool q){
|
2323
2376
|
return new TagLib::MP4::Item(q);
|
@@ -2473,22 +2526,20 @@ fail:
|
|
2473
2526
|
}
|
2474
2527
|
|
2475
2528
|
|
2476
|
-
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
|
2477
2529
|
SWIGINTERN VALUE
|
2478
|
-
|
2530
|
+
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
|
2531
|
+
_wrap_Properties_allocate(VALUE self)
|
2479
2532
|
#else
|
2480
|
-
|
2481
|
-
_wrap_Properties_allocate(int argc, VALUE *argv, VALUE self) {
|
2533
|
+
_wrap_Properties_allocate(int argc, VALUE *argv, VALUE self)
|
2482
2534
|
#endif
|
2483
|
-
|
2484
|
-
|
2485
|
-
VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_TagLib__MP4__Properties);
|
2535
|
+
{
|
2536
|
+
VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_TagLib__MP4__Properties);
|
2486
2537
|
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
|
2487
|
-
|
2538
|
+
rb_obj_call_init(vresult, argc, argv);
|
2488
2539
|
#endif
|
2489
|
-
|
2490
|
-
|
2491
|
-
|
2540
|
+
return vresult;
|
2541
|
+
}
|
2542
|
+
|
2492
2543
|
|
2493
2544
|
SWIGINTERN VALUE
|
2494
2545
|
_wrap_new_Properties__SWIG_1(int argc, VALUE *argv, VALUE self) {
|
@@ -2577,7 +2628,8 @@ fail:
|
|
2577
2628
|
|
2578
2629
|
|
2579
2630
|
SWIGINTERN void
|
2580
|
-
free_TagLib_MP4_Properties(
|
2631
|
+
free_TagLib_MP4_Properties(void *self) {
|
2632
|
+
TagLib::MP4::Properties *arg1 = (TagLib::MP4::Properties *)self;
|
2581
2633
|
SWIG_RubyRemoveTracking(arg1);
|
2582
2634
|
delete arg1;
|
2583
2635
|
}
|
@@ -2792,22 +2844,20 @@ fail:
|
|
2792
2844
|
}
|
2793
2845
|
|
2794
2846
|
|
2795
|
-
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
|
2796
2847
|
SWIGINTERN VALUE
|
2797
|
-
|
2848
|
+
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
|
2849
|
+
_wrap_Tag_allocate(VALUE self)
|
2798
2850
|
#else
|
2799
|
-
|
2800
|
-
_wrap_Tag_allocate(int argc, VALUE *argv, VALUE self) {
|
2851
|
+
_wrap_Tag_allocate(int argc, VALUE *argv, VALUE self)
|
2801
2852
|
#endif
|
2802
|
-
|
2803
|
-
|
2804
|
-
VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_TagLib__MP4__Tag);
|
2853
|
+
{
|
2854
|
+
VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_TagLib__MP4__Tag);
|
2805
2855
|
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
|
2806
|
-
|
2856
|
+
rb_obj_call_init(vresult, argc, argv);
|
2807
2857
|
#endif
|
2808
|
-
|
2809
|
-
|
2810
|
-
|
2858
|
+
return vresult;
|
2859
|
+
}
|
2860
|
+
|
2811
2861
|
|
2812
2862
|
SWIGINTERN VALUE
|
2813
2863
|
_wrap_new_Tag__SWIG_1(int argc, VALUE *argv, VALUE self) {
|
@@ -2879,7 +2929,8 @@ fail:
|
|
2879
2929
|
|
2880
2930
|
|
2881
2931
|
SWIGINTERN void
|
2882
|
-
free_TagLib_MP4_Tag(
|
2932
|
+
free_TagLib_MP4_Tag(void *self) {
|
2933
|
+
TagLib::MP4::Tag *arg1 = (TagLib::MP4::Tag *)self;
|
2883
2934
|
SWIG_RubyRemoveTracking(arg1);
|
2884
2935
|
delete arg1;
|
2885
2936
|
}
|
@@ -3387,7 +3438,6 @@ fail:
|
|
3387
3438
|
}
|
3388
3439
|
|
3389
3440
|
|
3390
|
-
|
3391
3441
|
/*
|
3392
3442
|
Document-method: TagLib::MP4::Tag.[]=
|
3393
3443
|
|
@@ -3500,27 +3550,26 @@ fail:
|
|
3500
3550
|
|
3501
3551
|
|
3502
3552
|
SWIGINTERN void
|
3503
|
-
free_TagLib_MP4_CoverArt(
|
3553
|
+
free_TagLib_MP4_CoverArt(void *self) {
|
3554
|
+
TagLib::MP4::CoverArt *arg1 = (TagLib::MP4::CoverArt *)self;
|
3504
3555
|
SWIG_RubyRemoveTracking(arg1);
|
3505
3556
|
delete arg1;
|
3506
3557
|
}
|
3507
3558
|
|
3508
|
-
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
|
3509
3559
|
SWIGINTERN VALUE
|
3510
|
-
|
3560
|
+
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
|
3561
|
+
_wrap_CoverArt_allocate(VALUE self)
|
3511
3562
|
#else
|
3512
|
-
|
3513
|
-
_wrap_CoverArt_allocate(int argc, VALUE *argv, VALUE self) {
|
3563
|
+
_wrap_CoverArt_allocate(int argc, VALUE *argv, VALUE self)
|
3514
3564
|
#endif
|
3515
|
-
|
3516
|
-
|
3517
|
-
VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_TagLib__MP4__CoverArt);
|
3565
|
+
{
|
3566
|
+
VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_TagLib__MP4__CoverArt);
|
3518
3567
|
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
|
3519
|
-
|
3568
|
+
rb_obj_call_init(vresult, argc, argv);
|
3520
3569
|
#endif
|
3521
|
-
|
3522
|
-
|
3523
|
-
|
3570
|
+
return vresult;
|
3571
|
+
}
|
3572
|
+
|
3524
3573
|
|
3525
3574
|
SWIGINTERN VALUE
|
3526
3575
|
_wrap_new_CoverArt__SWIG_1(int argc, VALUE *argv, VALUE self) {
|
@@ -3562,7 +3611,7 @@ SWIGINTERN VALUE _wrap_new_CoverArt(int nargs, VALUE *args, VALUE self) {
|
|
3562
3611
|
if (argc == 1) {
|
3563
3612
|
int _v;
|
3564
3613
|
void *vptr = 0;
|
3565
|
-
int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__MP4__CoverArt,
|
3614
|
+
int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__MP4__CoverArt, SWIG_POINTER_NO_NULL);
|
3566
3615
|
_v = SWIG_CheckState(res);
|
3567
3616
|
if (_v) {
|
3568
3617
|
return _wrap_new_CoverArt__SWIG_1(nargs, args, self);
|
@@ -3688,7 +3737,8 @@ fail:
|
|
3688
3737
|
|
3689
3738
|
|
3690
3739
|
SWIGINTERN void
|
3691
|
-
free_TagLib_MP4_Item(
|
3740
|
+
free_TagLib_MP4_Item(void *self) {
|
3741
|
+
TagLib::MP4::Item *arg1 = (TagLib::MP4::Item *)self;
|
3692
3742
|
SWIG_RubyRemoveTracking(arg1);
|
3693
3743
|
delete arg1;
|
3694
3744
|
}
|
@@ -3870,21 +3920,16 @@ fail:
|
|
3870
3920
|
SWIGINTERN VALUE
|
3871
3921
|
_wrap_new_Item__SWIG_9(int argc, VALUE *argv, VALUE self) {
|
3872
3922
|
TagLib::ByteVectorList *arg1 = 0 ;
|
3873
|
-
|
3874
|
-
int res1 = 0 ;
|
3923
|
+
TagLib::ByteVectorList tmp1 ;
|
3875
3924
|
TagLib::MP4::Item *result = 0 ;
|
3876
3925
|
|
3877
3926
|
if ((argc < 1) || (argc > 1)) {
|
3878
3927
|
rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
|
3879
3928
|
}
|
3880
|
-
|
3881
|
-
|
3882
|
-
|
3883
|
-
}
|
3884
|
-
if (!argp1) {
|
3885
|
-
SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "TagLib::ByteVectorList const &","Item", 1, argv[0]));
|
3929
|
+
{
|
3930
|
+
tmp1 = ruby_array_to_taglib_bytevectorlist(argv[0]);
|
3931
|
+
arg1 = &tmp1;
|
3886
3932
|
}
|
3887
|
-
arg1 = reinterpret_cast< TagLib::ByteVectorList * >(argp1);
|
3888
3933
|
result = (TagLib::MP4::Item *)new TagLib::MP4::Item((TagLib::ByteVectorList const &)*arg1);
|
3889
3934
|
DATA_PTR(self) = result;
|
3890
3935
|
SWIG_RubyAddTracking(result, self);
|
@@ -3894,22 +3939,20 @@ fail:
|
|
3894
3939
|
}
|
3895
3940
|
|
3896
3941
|
|
3897
|
-
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
|
3898
3942
|
SWIGINTERN VALUE
|
3899
|
-
|
3943
|
+
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
|
3944
|
+
_wrap_Item_allocate(VALUE self)
|
3900
3945
|
#else
|
3901
|
-
|
3902
|
-
_wrap_Item_allocate(int argc, VALUE *argv, VALUE self) {
|
3946
|
+
_wrap_Item_allocate(int argc, VALUE *argv, VALUE self)
|
3903
3947
|
#endif
|
3904
|
-
|
3905
|
-
|
3906
|
-
VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_TagLib__MP4__Item);
|
3948
|
+
{
|
3949
|
+
VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_TagLib__MP4__Item);
|
3907
3950
|
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
|
3908
|
-
|
3951
|
+
rb_obj_call_init(vresult, argc, argv);
|
3909
3952
|
#endif
|
3910
|
-
|
3911
|
-
|
3912
|
-
|
3953
|
+
return vresult;
|
3954
|
+
}
|
3955
|
+
|
3913
3956
|
|
3914
3957
|
SWIGINTERN VALUE
|
3915
3958
|
_wrap_new_Item__SWIG_10(int argc, VALUE *argv, VALUE self) {
|
@@ -3949,7 +3992,7 @@ SWIGINTERN VALUE _wrap_new_Item(int nargs, VALUE *args, VALUE self) {
|
|
3949
3992
|
if (argc == 1) {
|
3950
3993
|
int _v;
|
3951
3994
|
void *vptr = 0;
|
3952
|
-
int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__MP4__Item,
|
3995
|
+
int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__MP4__Item, SWIG_POINTER_NO_NULL);
|
3953
3996
|
_v = SWIG_CheckState(res);
|
3954
3997
|
if (_v) {
|
3955
3998
|
return _wrap_new_Item__SWIG_1(nargs, args, self);
|
@@ -3958,7 +4001,7 @@ SWIGINTERN VALUE _wrap_new_Item(int nargs, VALUE *args, VALUE self) {
|
|
3958
4001
|
if (argc == 1) {
|
3959
4002
|
int _v;
|
3960
4003
|
void *vptr = 0;
|
3961
|
-
int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__StringList,
|
4004
|
+
int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__StringList, SWIG_POINTER_NO_NULL);
|
3962
4005
|
_v = SWIG_CheckState(res);
|
3963
4006
|
if (_v) {
|
3964
4007
|
return _wrap_new_Item__SWIG_8(nargs, args, self);
|
@@ -3967,7 +4010,7 @@ SWIGINTERN VALUE _wrap_new_Item(int nargs, VALUE *args, VALUE self) {
|
|
3967
4010
|
if (argc == 1) {
|
3968
4011
|
int _v;
|
3969
4012
|
void *vptr = 0;
|
3970
|
-
int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__ByteVectorList,
|
4013
|
+
int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__ByteVectorList, SWIG_POINTER_NO_NULL);
|
3971
4014
|
_v = SWIG_CheckState(res);
|
3972
4015
|
if (_v) {
|
3973
4016
|
return _wrap_new_Item__SWIG_9(nargs, args, self);
|
@@ -3976,7 +4019,7 @@ SWIGINTERN VALUE _wrap_new_Item(int nargs, VALUE *args, VALUE self) {
|
|
3976
4019
|
if (argc == 1) {
|
3977
4020
|
int _v;
|
3978
4021
|
void *vptr = 0;
|
3979
|
-
int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__MP4__CoverArtList,
|
4022
|
+
int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__MP4__CoverArtList, SWIG_POINTER_NO_NULL);
|
3980
4023
|
_v = SWIG_CheckState(res);
|
3981
4024
|
if (_v) {
|
3982
4025
|
return _wrap_new_Item__SWIG_10(nargs, args, self);
|
@@ -4256,7 +4299,9 @@ _wrap_Item_to_byte_vector_list(int argc, VALUE *argv, VALUE self) {
|
|
4256
4299
|
}
|
4257
4300
|
arg1 = reinterpret_cast< TagLib::MP4::Item * >(argp1);
|
4258
4301
|
result = ((TagLib::MP4::Item const *)arg1)->toByteVectorList();
|
4259
|
-
|
4302
|
+
{
|
4303
|
+
vresult = taglib_bytevectorlist_to_ruby_array(result);
|
4304
|
+
}
|
4260
4305
|
return vresult;
|
4261
4306
|
fail:
|
4262
4307
|
return Qnil;
|
@@ -4480,22 +4525,17 @@ fail:
|
|
4480
4525
|
SWIGINTERN VALUE
|
4481
4526
|
_wrap_Item_from_byte_vector_list(int argc, VALUE *argv, VALUE self) {
|
4482
4527
|
TagLib::ByteVectorList *arg1 = 0 ;
|
4483
|
-
|
4484
|
-
int res1 = 0 ;
|
4528
|
+
TagLib::ByteVectorList tmp1 ;
|
4485
4529
|
TagLib::MP4::Item *result = 0 ;
|
4486
4530
|
VALUE vresult = Qnil;
|
4487
4531
|
|
4488
4532
|
if ((argc < 1) || (argc > 1)) {
|
4489
4533
|
rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
|
4490
4534
|
}
|
4491
|
-
|
4492
|
-
|
4493
|
-
|
4494
|
-
}
|
4495
|
-
if (!argp1) {
|
4496
|
-
SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "TagLib::ByteVectorList const &","TagLib_MP4_Item_from_byte_vector_list", 1, argv[0]));
|
4535
|
+
{
|
4536
|
+
tmp1 = ruby_array_to_taglib_bytevectorlist(argv[0]);
|
4537
|
+
arg1 = &tmp1;
|
4497
4538
|
}
|
4498
|
-
arg1 = reinterpret_cast< TagLib::ByteVectorList * >(argp1);
|
4499
4539
|
result = (TagLib::MP4::Item *)TagLib_MP4_Item_from_byte_vector_list((TagLib::ByteVectorList const &)*arg1);
|
4500
4540
|
vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_TagLib__MP4__Item, 0 | 0 );
|
4501
4541
|
return vresult;
|
@@ -4576,22 +4616,20 @@ fail:
|
|
4576
4616
|
}
|
4577
4617
|
|
4578
4618
|
|
4579
|
-
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
|
4580
4619
|
SWIGINTERN VALUE
|
4581
|
-
|
4620
|
+
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
|
4621
|
+
_wrap_File_allocate(VALUE self)
|
4582
4622
|
#else
|
4583
|
-
|
4584
|
-
_wrap_File_allocate(int argc, VALUE *argv, VALUE self) {
|
4623
|
+
_wrap_File_allocate(int argc, VALUE *argv, VALUE self)
|
4585
4624
|
#endif
|
4586
|
-
|
4587
|
-
|
4588
|
-
VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_TagLib__MP4__File);
|
4625
|
+
{
|
4626
|
+
VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_TagLib__MP4__File);
|
4589
4627
|
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
|
4590
|
-
|
4628
|
+
rb_obj_call_init(vresult, argc, argv);
|
4591
4629
|
#endif
|
4592
|
-
|
4593
|
-
|
4594
|
-
|
4630
|
+
return vresult;
|
4631
|
+
}
|
4632
|
+
|
4595
4633
|
|
4596
4634
|
SWIGINTERN VALUE
|
4597
4635
|
_wrap_new_File__SWIG_2(int argc, VALUE *argv, VALUE self) {
|
@@ -4814,22 +4852,20 @@ fail:
|
|
4814
4852
|
}
|
4815
4853
|
|
4816
4854
|
|
4817
|
-
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
|
4818
4855
|
SWIGINTERN VALUE
|
4819
|
-
|
4856
|
+
#ifdef HAVE_RB_DEFINE_ALLOC_FUNC
|
4857
|
+
_wrap_ItemMap_allocate(VALUE self)
|
4820
4858
|
#else
|
4821
|
-
|
4822
|
-
_wrap_ItemMap_allocate(int argc, VALUE *argv, VALUE self) {
|
4859
|
+
_wrap_ItemMap_allocate(int argc, VALUE *argv, VALUE self)
|
4823
4860
|
#endif
|
4824
|
-
|
4825
|
-
|
4826
|
-
VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_TagLib__MapT_TagLib__String_TagLib__MP4__Item_t);
|
4861
|
+
{
|
4862
|
+
VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_TagLib__MapT_TagLib__String_TagLib__MP4__Item_t);
|
4827
4863
|
#ifndef HAVE_RB_DEFINE_ALLOC_FUNC
|
4828
|
-
|
4864
|
+
rb_obj_call_init(vresult, argc, argv);
|
4829
4865
|
#endif
|
4830
|
-
|
4831
|
-
|
4832
|
-
|
4866
|
+
return vresult;
|
4867
|
+
}
|
4868
|
+
|
4833
4869
|
|
4834
4870
|
SWIGINTERN VALUE
|
4835
4871
|
_wrap_new_ItemMap__SWIG_1(int argc, VALUE *argv, VALUE self) {
|
@@ -4874,7 +4910,7 @@ SWIGINTERN VALUE _wrap_new_ItemMap(int nargs, VALUE *args, VALUE self) {
|
|
4874
4910
|
if (argc == 1) {
|
4875
4911
|
int _v;
|
4876
4912
|
void *vptr = 0;
|
4877
|
-
int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__MapT_TagLib__String_TagLib__MP4__Item_t,
|
4913
|
+
int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_TagLib__MapT_TagLib__String_TagLib__MP4__Item_t, SWIG_POINTER_NO_NULL);
|
4878
4914
|
_v = SWIG_CheckState(res);
|
4879
4915
|
if (_v) {
|
4880
4916
|
return _wrap_new_ItemMap__SWIG_1(nargs, args, self);
|
@@ -4891,12 +4927,12 @@ fail:
|
|
4891
4927
|
|
4892
4928
|
|
4893
4929
|
SWIGINTERN void
|
4894
|
-
free_TagLib_Map_Sl_TagLib_String_Sc_TagLib_MP4_Item_Sg_(
|
4930
|
+
free_TagLib_Map_Sl_TagLib_String_Sc_TagLib_MP4_Item_Sg_(void *self) {
|
4931
|
+
TagLib::Map< TagLib::String,TagLib::MP4::Item > *arg1 = (TagLib::Map< TagLib::String,TagLib::MP4::Item > *)self;
|
4895
4932
|
SWIG_RubyRemoveTracking(arg1);
|
4896
4933
|
delete arg1;
|
4897
4934
|
}
|
4898
4935
|
|
4899
|
-
|
4900
4936
|
/*
|
4901
4937
|
Document-method: TagLib::MP4::ItemMap.size
|
4902
4938
|
|
@@ -4983,7 +5019,6 @@ fail:
|
|
4983
5019
|
}
|
4984
5020
|
|
4985
5021
|
|
4986
|
-
|
4987
5022
|
/*
|
4988
5023
|
Document-method: TagLib::MP4::ItemMap.to_a
|
4989
5024
|
|
@@ -5360,7 +5395,7 @@ SWIG_InitializeModule(void *clientdata) {
|
|
5360
5395
|
|
5361
5396
|
/* Now work on filling in swig_module.types */
|
5362
5397
|
#ifdef SWIGRUNTIME_DEBUG
|
5363
|
-
printf("SWIG_InitializeModule: size %
|
5398
|
+
printf("SWIG_InitializeModule: size %lu\n", (unsigned long)swig_module.size);
|
5364
5399
|
#endif
|
5365
5400
|
for (i = 0; i < swig_module.size; ++i) {
|
5366
5401
|
swig_type_info *type = 0;
|
@@ -5368,7 +5403,7 @@ SWIG_InitializeModule(void *clientdata) {
|
|
5368
5403
|
swig_cast_info *cast;
|
5369
5404
|
|
5370
5405
|
#ifdef SWIGRUNTIME_DEBUG
|
5371
|
-
printf("SWIG_InitializeModule: type %
|
5406
|
+
printf("SWIG_InitializeModule: type %lu %s\n", (unsigned long)i, swig_module.type_initial[i]->name);
|
5372
5407
|
#endif
|
5373
5408
|
|
5374
5409
|
/* if there is another module already loaded */
|
@@ -5444,7 +5479,7 @@ SWIG_InitializeModule(void *clientdata) {
|
|
5444
5479
|
for (i = 0; i < swig_module.size; ++i) {
|
5445
5480
|
int j = 0;
|
5446
5481
|
swig_cast_info *cast = swig_module.cast_initial[i];
|
5447
|
-
printf("SWIG_InitializeModule: type %
|
5482
|
+
printf("SWIG_InitializeModule: type %lu %s\n", (unsigned long)i, swig_module.type_initial[i]->name);
|
5448
5483
|
while (cast->type) {
|
5449
5484
|
printf("SWIG_InitializeModule: cast type %s\n", cast->type->name);
|
5450
5485
|
cast++;
|