'store the macro value, as a single string which can be executed'

def __init__(self, code):

    lines = []
    enc = None
    for line in code.splitlines():
        coding_match = coding_declaration.match(line)
        if coding_match:
            enc = coding_match.group(1)
        else:
            lines.append(line)
    code = '\n'.join(lines)
    if isinstance(code, bytes):
        code = code.decode((enc or DEFAULT_ENCODING))
    self.value = (code + '\n')
