मैं hOCR सामग्री को संभालने के लिए HTML::Element
के शीर्ष पर hOCR::Element
पैकेज लिख रहा हूं। तदनुसार, hOCR::Element
वर्ग की एक वस्तु HTML::Element
से संबंधित सभी विधियों को प्राप्त करती है।सभी विरासत विधियों को उपclass वस्तुओं को वापस कैसे करें?
लेकिन वहाँ के रूप में HTML::Element
(जैसे find_by_tag_name
और look_down
) कि HTML::Element
वस्तुओं लौटने से आवश्यक तरीकों की एक संख्या कर रहे हैं, मैं अपने आप को ऐसे प्रत्येक विधि के लिए एक इसी hOCR::Element
आवरण विधि कि बस hOCR
के रूप में आशीष द्वारा नक्शे लिखने के लिए होने देखो क्या इसे HTML
के रूप में दिया जाता है।
उदाहरण के लिए:
package hOCR::Element;
use HTML::Element;
use parent 'HTML::Element';
sub new {
my ($class, %params) = @_;
my $self = $class->SUPER::new (%params);
return bless $self, $class;
}
sub look_down {
my $self = shift;
return map { bless $_, 'hOCR::Element' } $self->SUPER::look_down (@_);
}
1;
कैसे मैं एक उपवर्ग इस तरह से अपने आधार वर्ग से सभी तरीकों के वारिस है कि उन प्रासंगिक तरीकों लौट उपवर्ग आधार वर्ग वस्तुओं के बजाय वस्तुओं, एक आवरण लिखने के बिना हो सकता है ऐसी प्रत्येक मूल विधि के लिए?
आप एक [ 'AUTLOAD'] (http://perldoc.perl.org/perlsub.html#Autoloading) सबरूटीन लेखन के बजाय' एचटीएमएल :: Element' से इनहेरिट विचार कर सकते हैं, लेकिन यह एक छोटे से बदसूरत है – Borodin
धन्यवाद। क्या यह सिर्फ बदसूरत होगा या क्या मुझे बाद में असली परेशानी हो सकती है? –
मुझे कोई आश्चर्य नहीं दिख रहा है – Borodin