두 개의 XML 문서를 비교할 수있는 Perl mod XML :: SemanticDiff를 사용하고 있습니다. 나 자신의 커스텀 핸들러를 작성하고 싶지만 Perl에 비교적 익숙하지 않은 나는 이것을 어떻게 수행 해야할지에 관해서 분노하고있다.Perl 처리기에 대한 좋은 소개가 있습니까?
핸들러는 특정 이벤트가 발생할 때 호출되는 서브 루틴에 지나지 않습니다. 그러나 이러한 이벤트가 내 코드에서 메서드를 호출하는 방법에 대한 구현 세부 정보는 모호합니다. 예를 들어
는이 모듈의 기본 구현이 같은 시작 :
my $diff = XML::SemanticDiff->new(keepdata=> 1, keeplinenums => 1, diffhandler => 1);
my @changes = $diff->compare($file1, $file2);
그리고 나는 내 사용자 지정 처리기 이런 식으로 뭔가 보일 것 알고 :
sub element_value($self, $element, $to_element_properties, $fromdoc_element_properties) {
my ($self, @args) = @_;
}
을하지만 수행이 필요 이 하위 코드를 실제로 호출하는 코드가 있습니까? 예 :
foreach my $change (@changes) {
$change->element_value(some_arguements_here);
}
$diff->compare($file1, $file2);
이 실행될 때 자동으로 호출되는 핸들러입니까?
모든 포인터가 크게 감사하겠습니다.
답장을 보내 주셔서 감사합니다. –