@:value({ opt : "i" })new(pattern:String, opt:String = "i")
addConstraint(param:String, constraint:String):Void
getPattern():String
match(path:String):Null<Map<String, String>>