def generate(): '''Static method for generating a new code block. Creates and returns a new code block that is generated based on the registered code parts.''' retval = code() for i in range(1 + random.randrange(settings.maximumBlocks)): retval.if_statements.append(if_statement.generate(1)) return retval
def merge_with_random(code): ''' Merges given code instance with a new random block that is generate. Merged code instance is returned. Parameters: code - Code block that is merged with a randomly generated branch. ''' merged = copy.deepcopy(code) branch = if_statement.generate(1) merged.replace_random_branch(branch) return merged