casbin/util/built_in_functions.cpp
// KeyMatch3 determines whether key1 matches the pattern of key2 (similar to RESTful path), key2 can contain a *.
// For example, "/foo/bar" matches "/foo/*", "/resource1" matches "/{resource}"
KeyMatch3 determines whether key1 matches the pattern of key2 (similar to RESTful path), key2 can contain a *.
KeyMatch3 determines whether key1 matches the pattern of key2 ( similar to RESTful path ) key2 can contain a * .
ReturnType KeyMatch3(Scope scope) {
    std::string key1 = GetString(scope, 0);
    std::string key2 = GetString(scope, 1);
    PushBooleanValue(scope, KeyMatch3(key1, key2));
    return RETURN_RESULT;
}
ReturnType KeyMatch3 ( Scope scope ) { std :: string key1 = GetString ( scope , 0 ) ; std :: string key2 = GetString ( scope , 1 ) ; PushBooleanValue ( scope , KeyMatch3 ( key1 , key2 ) ) ; return RETURN_RESULT ; }
KeyMatch3 determines whether key1 matches the pattern of key2 (similar to RESTful path), key2 can contain a *.
KeyMatch3 determines whether key1 matches the pattern of key2 ( similar to RESTful path ) key2 can contain a * .