2020-08-23 14:15:53 +00:00

12 lines
2.1 KiB
Go

//
// Copyright 2020 FoxyUtils ehf. All rights reserved.
//
// This is a commercial product and requires a license to operate.
// A trial license can be obtained at https://unidoc.io
//
// DO NOT EDIT: generated by unitwist Go source code obfuscator.
//
// Use of this source code is governed by the UniDoc End User License Agreement
// terms that can be accessed at https://unidoc.io/eula/
package wildcard ;func Index (pattern ,name string )(_bc int ){if pattern ==""||pattern =="\u002a"{return 0;};_cbg :=make ([]rune ,0,len (name ));_gd :=make ([]rune ,0,len (pattern ));for _ ,_gdb :=range name {_cbg =append (_cbg ,_gdb );};for _ ,_dc :=range pattern {_gd =append (_gd ,_dc );};return _gbf (_cbg ,_gd ,0);};func MatchSimple (pattern ,name string )bool {if pattern ==""{return name ==pattern ;};if pattern =="\u002a"{return true ;};_cd :=make ([]rune ,0,len (name ));_ca :=make ([]rune ,0,len (pattern ));for _ ,_bb :=range name {_cd =append (_cd ,_bb );};for _ ,_ae :=range pattern {_ca =append (_ca ,_ae );};_ab :=true ;return _ea (_cd ,_ca ,_ab );};func _ea (_fg ,_gbe []rune ,_c bool )bool {for len (_gbe )> 0{switch _gbe [0]{default:if len (_fg )==0||_fg [0]!=_gbe [0]{return false ;};case '?':if len (_fg )==0&&!_c {return false ;};case '*':return _ea (_fg ,_gbe [1:],_c )||(len (_fg )> 0&&_ea (_fg [1:],_gbe ,_c ));};_fg =_fg [1:];_gbe =_gbe [1:];};return len (_fg )==0&&len (_gbe )==0;};func Match (pattern ,name string )(_gdc bool ){if pattern ==""{return name ==pattern ;};if pattern =="\u002a"{return true ;};_g :=make ([]rune ,0,len (name ));_dg :=make ([]rune ,0,len (pattern ));for _ ,_ad :=range name {_g =append (_g ,_ad );};for _ ,_a :=range pattern {_dg =append (_dg ,_a );};_d :=false ;return _ea (_g ,_dg ,_d );};func _gbf (_fe ,_da []rune ,_ga int )int {for len (_da )> 0{switch _da [0]{default:if len (_fe )==0{return -1;};if _fe [0]!=_da [0]{return _gbf (_fe [1:],_da ,_ga +1);};case '?':if len (_fe )==0{return -1;};case '*':if len (_fe )==0{return -1;};_dcf :=_gbf (_fe ,_da [1:],_ga );if _dcf !=-1{return _ga ;}else {_dcf =_gbf (_fe [1:],_da ,_ga );if _dcf !=-1{return _ga ;}else {return -1;};};};_fe =_fe [1:];_da =_da [1:];};return _ga ;};