البيانات :: محول

اجتياز بنية بيانات، مما أدى إلى تغييره في مكانه
التحميل الان

البيانات :: محول الترتيب والملخص

الإعلانات

  • Rating:
  • رخصة:
  • Perl Artistic License
  • السعر:
  • FREE
  • اسم الناشر:
  • Baldur Kristinsson
  • موقع ويب الناشر:
  • http://search.cpan.org/~baldur/Cache-BerkeleyDB-0.03/lib/Cache/BerkeleyDB.pm

البيانات :: محول العلامات


البيانات :: محول وصف

اجتياز هيكل البيانات، وتغييره في مكانه Data :: Transformer هو وحدة بيرل لاجتياز بنية بيانات، مما يغيره في Place.Synopsis استخدم البيانات :: Transformer؛ # أ: استخدام بسيط: # تقليم مساحة بيضاء اضافية من السلاسل العادية داخل تا. بلدي $ تقليم = sub {محلي ($ _) = التحول؛ $$ _ = ~ s / ^ s * //؛ $$ _ = ~ s / s * $ //؛ } بلدي $ t = البيانات :: محول-> جديد (عادي => $ trim)؛ $ t-> اجتياز (TA)؛ # ب: الاستخدام الأكثر تعقيدا: # (أ) الأحرف الكبيرة على جميع المفاتيح في جميع التجزئة الموجودة في بيانات $ (B) و (B) تحويل أي صفائف إلى التجزئة: بلدي $ uc_hash = sub {my $ h = shift؛ بلديkeys = مفاتيح h؛ foreach (@ Toke) {My $ UC = UC ($ _)؛ إذا كان ($ UC NE $ _! موجود ($ h -> {$ uc})) {$ h -> {$ uc} = $ h -> {$ _}؛ حذف $ H -> {$ _}؛ } elsif ($ UC NE $ _) {DID "مفتاح سيء $ _:" $ UC "موجود بالفعل"؛ }}}؛ بلدي $ ar_conv = sub {my h = @ {$ _ }؛ عودة sub {\ h}؛ } بلدي $ t = البيانات :: Transformer-> جديد (hash => $ uc_hash، array => $ ar_conv، node_limit => 500_000)؛ Eval {$ t-> traverse (بيانات $)}؛ تحذير "لا يمكن إكمال التحول: $ @" إذا $ @؛ # ج: اجتياز غير مدمر # لا تضطر في الواقع لتغيير أي شيء ... بلدي حجم $ = 0؛ My $ t = البيانات :: Transformer-> جديد (عادي => SUB {$ حجم + = الطول ($ {$ _ })}، Hash => sub {$ حجم + = الطول ($ _) للمفاتيح { $ _ }}،)؛ بلدي العقد $ = $ t-> tranverse (TA)؛ طباعة "عدد العقد: حدة $ "؛ طباعة" حجم المفاتيح + القيم: حجم $ "؛ # D: الكائنات داخل بنية البيانات تؤثر على الكائنات باستخدام اسم الفصل كإشارة: My $ T = Data :: Transformer-> جديد ('My :: Class' => sub {shift-> set_foo (' شريط ')})؛ المتطلبات: perl.


البيانات :: محول برامج ذات صلة