OSDN Git Service

trace: [tracetool] Add methods 'Event.copy' and 'Arguments.copy'
authorLluís Vilanova <vilanova@ac.upc.edu>
Sun, 23 Feb 2014 19:37:08 +0000 (20:37 +0100)
committerStefan Hajnoczi <stefanha@redhat.com>
Wed, 7 May 2014 17:07:17 +0000 (19:07 +0200)
Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
scripts/tracetool/__init__.py

index 305b99e..bfe44bd 100644 (file)
@@ -52,6 +52,10 @@ class Arguments:
         """
         self._args = args
 
+    def copy(self):
+        """Create a new copy."""
+        return Arguments(list(self._args))
+
     @staticmethod
     def build(arg_str):
         """Build and Arguments instance from an argument string.
@@ -146,6 +150,11 @@ class Event(object):
         if len(unknown_props) > 0:
             raise ValueError("Unknown properties: %s" % ", ".join(unknown_props))
 
+    def copy(self):
+        """Create a new copy."""
+        return Event(self.name, list(self.properties), self.fmt,
+                     self.args.copy(), self)
+
     @staticmethod
     def build(line_str):
         """Build an Event instance from a string.