def convert_resource_list()

in pbspro/src/pbspro/parser.py [0:0]


    def convert_resource_list(self, raw_dict: Dict[str, Any],) -> Dict[str, Any]:
        """
        secondary parsing of Resource_List dictionary. Mostly this will convert
        resources to their appropriate type, as per PBSProResourceDefinition.parse
        """
        ret: Dict[str, Any] = {}

        if "select" in raw_dict:
            ret["select"] = self.parse_select(str(raw_dict["select"]))

        if "schedselect" in raw_dict:
            ret["schedselect"] = self.parse_select(str(raw_dict["schedselect"]))

        if "place" in raw_dict:
            ret["place"] = self.parse_place(raw_dict["place"])

        for key, value in raw_dict.items():
            if key in ret:
                # already handled
                continue

            if isinstance(value, str) and key in self.resource_definitions:
                value = self.resource_definitions[key].type.parse(value)

            ret[key] = value

        return ret