Project Name: cloud-custodian+cloud-custodian
Language: Python
Statement Type: API

Source Code:
def _get_attr_schema():
    base_filters = [
        {'$ref': '#/definitions/filters/value'},
        {'$ref': '#/definitions/filters/valuekv'},
    ]
    any_of = []
    any_of.extend(base_filters)

    for op in ('and', 'or', 'not',):
        any_of.append(
            {
                'additional_properties': False,
                'properties': {
                    op: {
                        'type': 'array',
                        'items': {
                            'anyOf': base_filters
                        }
                    }
                },
                'type': 'object'
            }
        )

    attr_schema = {
        'items': {
            'anyOf': any_of
        },
        'type': 'array',
    }
    return attr_schema

_get_attr_schema()

Selected Statement: any_of.extend(base_filters)

Function Input:

Variable Values Before Statement:
base_filters: #/definitions/filters/value, #/definitions/filters/valuekv

Value After Statement Execution: #/definitions/filters/value, #/definitions/filters/valuekv

Variable States During Runtime (line, value):
base_filters: 2
#/definitions/filters/value, #/definitions/filters/valuekv
any_of: 6
7
#/definitions/filters/value, #/definitions/filters/valuekv
10
[{'$ref': '#/definitions/filters/value'}, {'$ref': '#/definitions/filters/valuekv'}, {'additional_properties': False, 'properties': {'and': {'type': 'array', 'items': {'anyOf': [{'$ref': '#/definitions/filters/value'}, {'$ref': '#/definitions/filters/valuekv'}]}}}, 'type': 'object'}]
10
[{'$ref': '#/definitions/filters/value'}, {'$ref': '#/definitions/filters/valuekv'}, {'additional_properties': False, 'properties': {'and': {'type': 'array', 'items': {'anyOf': [{'$ref': '#/definitions/filters/value'}, {'$ref': '#/definitions/filters/valuekv'}]}}}, 'type': 'object'}, {'additional_properties': False, 'properties': {'or': {'type': 'array', 'items': {'anyOf': [{'$ref': '#/definitions/filters/value'}, {'$ref': '#/definitions/filters/valuekv'}]}}}, 'type': 'object'}]
10
[{'$ref': '#/definitions/filters/value'}, {'$ref': '#/definitions/filters/valuekv'}, {'additional_properties': False, 'properties': {'and': {'type': 'array', 'items': {'anyOf': [{'$ref': '#/definitions/filters/value'}, {'$ref': '#/definitions/filters/valuekv'}]}}}, 'type': 'object'}, {'additional_properties': False, 'properties': {'or': {'type': 'array', 'items': {'anyOf': [{'$ref': '#/definitions/filters/value'}, {'$ref': '#/definitions/filters/valuekv'}]}}}, 'type': 'object'}, {'additional_properties': False, 'properties': {'not': {'type': 'array', 'items': {'anyOf': [{'$ref': '#/definitions/filters/value'}, {'$ref': '#/definitions/filters/valuekv'}]}}}, 'type': 'object'}]
op: 9
'and'
9
'or'
9
'not'
attr_schema: 25
{'items': {'anyOf': [{'$ref': '#/definitions/filters/value'}, {'$ref': '#/definitions/filters/valuekv'}, {'additional_properties': False, 'properties': {'and': {'type': 'array', 'items': {'anyOf': [{'$ref': '#/definitions/filters/value'}, {'$ref': '#/definitions/filters/valuekv'}]}}}, 'type': 'object'}, {'additional_properties': False, 'properties': {'or': {'type': 'array', 'items': {'anyOf': [{'$ref': '#/definitions/filters/value'}, {'$ref': '#/definitions/filters/valuekv'}]}}}, 'type': 'object'}, {'additional_properties': False, 'properties': {'not': {'type': 'array', 'items': {'anyOf': [{'$ref': '#/definitions/filters/value'}, {'$ref': '#/definitions/filters/valuekv'}]}}}, 'type': 'object'}]}, 'type': 'array'}