def _build_string_type(var, property_path=None):
    """ Builds schema definitions for string type values.

    :param var: The string type value
    :param List[str] property_path: The property path of the current type,
        defaults to None, optional
    :param property_path: [type], optional
    :return: The built schema definition
    :rtype: Dict[str, Any]
    """

    if not property_path:
        property_path = []

    schema = {"type": "string"}
    if is_builtin_type(var):
        return schema

    if is_regex_type(var):
        schema["pattern"] = var.__supertype__.pattern
        return schema

    if is_config_var(var):
        schema.update(
            _build_attribute_modifiers(var, {"min": "minLength", "max": "maxLength"})
        )
        if is_regex_type(var.type):
            schema["pattern"] = var.type.__supertype__.pattern

    return schema
def _build_string_type ( var , property_path = None ) : if not property_path : property_path = [ ] schema = { "type" : "string" } if is_builtin_type ( var ) : return schema if is_regex_type ( var ) : schema [ "pattern" ] = var . __supertype__ . pattern return schema if is_config_var ( var ) : schema . update ( _build_attribute_modifiers ( var , { "min" : "minLength" , "max" : "maxLength" } ) ) if is_regex_type ( var . type ) : schema [ "pattern" ] = var . type . __supertype__ . pattern return schema
Builds schema definitions for string type values.

    :param var: The string type value
    :param List[str] property_path: The property path of the current type,
        defaults to None, optional
    :param property_path: [type], optional
    :return: The built schema definition
    :rtype: Dict[str, Any]