(cfc_accessors, properties)
return meta
build a dict for each property that has a getter and/or a setter
    these will be used as a base for explicit functions to be merged into
build a dict for each property that has a getter and/or a setter
    these will be used as a base for explicit functions to be merged into
build a dict for each property that has a getter and / or a setter these will be used as a base for explicit functions to be merged into
def get_accessors_metadata_dict(cfc_accessors, properties):
    """
    build a dict for each property that has a getter and/or a setter
    these will be used as a base for explicit functions to be merged into
    """
    meta = {}
    for prop_name in properties:
        attrs = properties[prop_name]
        cased_prop_name = prop_name[0].upper() + prop_name[1:]

        # getter
        if attrs["getter"] or (attrs["getter"] is None and cfc_accessors):
            funct_meta = {"access": "public", "parameters": []}
            funct_meta["returntype"] = attrs["type"]
            meta["get" + prop_name.lower()] = {
                "name": "get" + cased_prop_name,
                "meta": funct_meta,
                "implicit": True
            }

        # setter
        if attrs["setter"] or (attrs["setter"] is None and cfc_accessors):
            funct_meta = {"access": "public", "parameters": []}
            arg = {"default": None}
            arg["name"] = prop_name
            arg["required"] = True
            arg["type"] = attrs["type"]
            funct_meta["returntype"] = "void"
            funct_meta["parameters"].append(arg)
            meta["set" + prop_name.lower()] = {
                "name": "set" + cased_prop_name,
                "meta": funct_meta,
                "implicit": True
            }

    return meta
def get_accessors_metadata_dict ( cfc_accessors , properties ) : meta = { } for prop_name in properties : attrs = properties [ prop_name ] cased_prop_name = prop_name [ 0 ] . upper ( ) + prop_name [ 1 : ] # getter if attrs [ "getter" ] or ( attrs [ "getter" ] is None and cfc_accessors ) : funct_meta = { "access" : "public" , "parameters" : [ ] } funct_meta [ "returntype" ] = attrs [ "type" ] meta [ "get" + prop_name . lower ( ) ] = { "name" : "get" + cased_prop_name , "meta" : funct_meta , "implicit" : True } # setter if attrs [ "setter" ] or ( attrs [ "setter" ] is None and cfc_accessors ) : funct_meta = { "access" : "public" , "parameters" : [ ] } arg = { "default" : None } arg [ "name" ] = prop_name arg [ "required" ] = True arg [ "type" ] = attrs [ "type" ] funct_meta [ "returntype" ] = "void" funct_meta [ "parameters" ] . append ( arg ) meta [ "set" + prop_name . lower ( ) ] = { "name" : "set" + cased_prop_name , "meta" : funct_meta , "implicit" : True } return meta