]> git.proxmox.com Git - mirror_edk2.git/commit
BaseTools: Customize deepcopy function.
authorBobCF <bob.c.feng@intel.com>
Thu, 8 Nov 2018 06:03:38 +0000 (14:03 +0800)
committerBobCF <bob.c.feng@intel.com>
Fri, 7 Dec 2018 02:31:04 +0000 (10:31 +0800)
commitbf9e636605188e291d33ab694ff1c5926b6f0800
treeed9c6534d4cda516d290f979ba2848a882928508
parent4e375707392e4f9085e2d2342e41aee9d4df2b0a
BaseTools: Customize deepcopy function.

https://bugzilla.tianocore.org/show_bug.cgi?id=1288

This patch is one of build tool performance improvement
series patches.

This patch is going to customize the deepcopy function for
SkuClass, PcdClassObject and python dictionary.

python deepcopy copy everything of a object, but for our current
usage we just need to copy the data we care about recursively.

By implementing __deepcopy__ for SkuClass, PcdClassObject, we can customize
deepcopy function for them.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: BobCF <bob.c.feng@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Jaben Carsey <jaben.carsey@intel.com>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
BaseTools/Source/Python/Common/Expression.py
BaseTools/Source/Python/Common/Misc.py
BaseTools/Source/Python/CommonDataClass/CommonClass.py
BaseTools/Source/Python/Workspace/BuildClassObject.py
BaseTools/Source/Python/Workspace/DscBuildData.py