Advertisement
Guest User

Untitled

a guest
Jul 11th, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
F# 1.10 KB | None | 0 0
  1.   module Validation =
  2.         let regexCheck regex errorMessage value returnFun =
  3.             if not <| Regex.IsMatch(value, regex) then
  4.                 Fail [errorMessage]
  5.             else Ok <| returnFun value
  6.    
  7.     module Player =        
  8.        
  9.         let createNickName nickName =
  10.             Validation.regexCheck "^\w{1,20}$" "NickName is incorrect" nickName PlayerNickName
  11.            
  12.         let createFirstName firstName =
  13.             Validation.regexCheck "^\w{1,20}$" "FirstName is incorrect" firstName PlayerFirstName
  14.                
  15.         let create nickName firstName =        
  16.             match createNickName nickName, createFirstName firstName with
  17.             | Ok n, Ok f ->        
  18.                 Ok { Id = NewPlayer
  19.                      NickName = n
  20.                      FirstName = f
  21.                      JoinedCompanies = []
  22.                      JoinedTeams = []
  23.                      OwnedCompanies = []
  24.                      OwnedTeams = [] }
  25.             | Fail nl, Fail fl -> Fail <| nl @ fl
  26.             | Fail nl, _ -> Fail nl
  27.             | _, Fail fl -> Fail fl
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement