public override void Visit(IPESection peSection)
 {
     if (Process(peSection))
     {
         visitor.Visit(peSection);
     }
     base.Visit(peSection);
 }
예제 #2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="peSection"></param>
 /// <param name="internFactory"></param>
 public void Copy(IPESection peSection, IInternFactory internFactory)
 {
     this.sectionName     = peSection.SectionName;
     this.characteristics = peSection.Characteristics;
     this.virtualAddress  = peSection.VirtualAddress;
     this.virtualSize     = peSection.VirtualSize;
     this.sizeOfRawData   = peSection.SizeOfRawData;
     if (peSection.SizeOfRawData > 0)
     {
         this.Rawdata = new List <byte>(peSection.Rawdata);
     }
 }
예제 #3
0
 public override void TraverseChildren(IPESection peSection)
 {
     MethodEnter(peSection);
     base.TraverseChildren(peSection);
     MethodExit();
 }
예제 #4
0
 public virtual void onMetadataElement(IPESection peSection) { }
예제 #5
0
 /// <summary>
 /// Performs some compuation with the given PE section.
 /// </summary>
 public void Visit(IPESection peSection)
 {
 }
예제 #6
0
 /// <summary>
 /// Performs some compuation with the given PE section.
 /// </summary>
 public virtual void Visit(IPESection peSection)
 {
 }
예제 #7
0
 public void Visit(IPESection peSection)
 {
     Contract.Assume(false);
 }
예제 #8
0
 /// <summary>
 /// Traverses the children of the PE section.
 /// </summary>
 public virtual void TraverseChildren(IPESection peSection)
 {
     Contract.Requires(peSection != null);
 }
예제 #9
0
 /// <summary>
 /// Traverses the PE section;
 /// </summary>
 /// <param name="peSection"></param>
 public void Traverse(IPESection peSection)
 {
     Contract.Requires(peSection != null);
       if (this.preorderVisitor != null) this.preorderVisitor.Visit(peSection);
       if (this.stopTraversal) return;
       this.TraverseChildren(peSection);
       if (this.stopTraversal) return;
       if (this.postorderVisitor != null) this.postorderVisitor.Visit(peSection);
 }
예제 #10
0
 public void Visit(IPESection peSection)
 {
     throw new NotImplementedException();
 }
예제 #11
0
        public override void TraverseChildren(IPESection peSection)
{ MethodEnter(peSection);
            base.TraverseChildren(peSection);
     MethodExit();   }
예제 #12
0
 public virtual void onMetadataElement(IPESection peSection)
 {
 }
 /// <summary>
 /// Performs some compuation with the given PE section.
 /// </summary>
 public virtual void Visit(IPESection peSection)
 {
 }
 /// <summary>
 /// Rewrites the given PE section.
 /// </summary>
 public virtual IPESection Rewrite(IPESection peSection)
 {
     return peSection;
 }
예제 #15
0
 public override void Visit(IPESection peSection)
 {
     allElements.Add(new InvokInfo(Traverser, "IPESection", peSection));
 }
 public override void Visit(IPESection peSection)
 {
     if(Process(peSection)){visitor.Visit(peSection);}
     base.Visit(peSection);
 }