-(: str->feed (String (Option Feed)))
-(define (str->feed str)
- (log-debug "Parsing feed string: ~v" str)
- (match (string-split str)
- [(list nick u)
- (with-handlers*
- ([exn:fail?
- (λ (e)
- (log-error "Invalid URI: ~v, exn: ~v" u e)
- #f)])
- (feed nick (string->url u)))]
- [_
- (log-error "Invalid feed string: ~v" str)
- #f]))
+(: str->peer (String (Option Peer)))
+(define (str->peer str)
+ (log-debug "Parsing peer string: ~v" str)
+ (with-handlers*
+ ([exn:fail?
+ (λ (e)
+ (log-error "Invalid URI in string: ~v, exn: ~v" str e)
+ #f)])
+ (match (string-split str)
+ [(list u) (Peer #f (string->url u))]
+ [(list n u) (Peer n (string->url u))]
+ [_
+ (log-error "Invalid peer string: ~v" str)
+ #f])))
+