From c09a58a7251f85d7c186d978b152e9c3d89d482d Mon Sep 17 00:00:00 2001 From: Caleb Deveraux Date: Mon, 4 Oct 2010 14:26:16 +0800 Subject: [PATCH] Simplify mask construction to prevent unnecessary temporaries --- mclevel.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/mclevel.py b/mclevel.py index 0a318d1..e1851ed 100644 --- a/mclevel.py +++ b/mclevel.py @@ -111,6 +111,8 @@ Copyright 2010 David Rio Vierra """ import nbt +import operator +import functools from nbt import * import gzip import StringIO @@ -462,10 +464,7 @@ class MCLevel(object): blocks = self.Blocks[slices[0],slices[2],slices[1]] if blocksToReplace != None: - masks = map(lambda x:blocks==x, blocksToReplace); - mask = masks.pop(); - while len(masks): - mask |= masks.pop(); + mask = functools.reduce((blocks==x for x in blocksToReplace), operator.or_) blocks[mask] = blockType; if hasattr(self, "Data"):