1# Copyright 2007 Google, Inc. All Rights Reserved.
2# Licensed to PSF under a Contributor Agreement.
3
4"""Fixer that changes buffer(...) into memoryview(...)."""
5
6# Local imports
7from .. import fixer_base
8from ..fixer_util import Name
9
10
11class FixBuffer(fixer_base.BaseFix):
12    BM_compatible = True
13
14    explicit = True # The user must ask for this fixer
15
16    PATTERN = """
17              power< name='buffer' trailer< '(' [any] ')' > any* >
18              """
19
20    def transform(self, node, results):
21        name = results["name"]
22        name.replace(Name("memoryview", prefix=name.prefix))
23