calIcalProperty::GetParameter(const nsACString &param, nsACString &value)
calIcalProperty::GetParameter(PRUint32 kind, nsACString &value)
calIcalProperty::GetParameter(const nsACString &param, nsACString &value){    // More ridiculous parameter/X-PARAMETER handling.    icalparameter_kind paramkind =         icalparameter_string_to_kind(PromiseFlatCString(param).get());    if (paramkind == ICAL_NO_PARAMETER)        return NS_ERROR_INVALID_ARG;    const char *icalstr = nsnull;    if (paramkind == ICAL_X_PARAMETER) {        icalparameter *icalparam = FindXParameter(mProperty, param);        if (icalparam)            icalstr = icalparameter_get_xvalue(icalparam);    } else {        icalstr = icalproperty_get_parameter_as_string(mProperty,                                                       PromiseFlatCString(param).get());    }    if (!icalstr) {        value.Truncate();        value.SetIsVoid(PR_TRUE);    } else {        value.Assign(icalstr);    }    return NS_OK;}