2022-01-15 21:17:38 +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 _cce (_fea ,_dae []rune ,_de int )int {for len (_dae )> 0{switch _dae [0]{default:if len (_fea )==0{return -1;};if _fea [0]!=_dae [0]{return _cce (_fea [1:],_dae ,_de +1);};case '?':if len (_fea )==0{return -1;};case '*':if len (_fea )==0{return -1;};_gf :=_cce (_fea ,_dae [1:],_de );if _gf !=-1{return _de ;}else {_gf =_cce (_fea [1:],_dae ,_de );if _gf !=-1{return _de ;}else {return -1;};};};_fea =_fea [1:];_dae =_dae [1:];};return _de ;};func Match (pattern ,name string )(_ed bool ){if pattern ==""{return name ==pattern ;};if pattern =="\u002a"{return true ;};_da :=make ([]rune ,0,len (name ));_f :=make ([]rune ,0,len (pattern ));for _ ,_gg :=range name {_da =append (_da ,_gg );};for _ ,_ab :=range pattern {_f =append (_f ,_ab );};_b :=false ;return _gcb (_da ,_f ,_b );};func Index (pattern ,name string )(_cd int ){if pattern ==""||pattern =="\u002a"{return 0;};_acd :=make ([]rune ,0,len (name ));_fe :=make ([]rune ,0,len (pattern ));for _ ,_fa :=range name {_acd =append (_acd ,_fa );};for _ ,_aca :=range pattern {_fe =append (_fe ,_aca );};return _cce (_acd ,_fe ,0);};func _gcb (_eb ,_ff []rune ,_ebb bool )bool {for len (_ff )> 0{switch _ff [0]{default:if len (_eb )==0||_eb [0]!=_ff [0]{return false ;};case '?':if len (_eb )==0&&!_ebb {return false ;};case '*':return _gcb (_eb ,_ff [1:],_ebb )||(len (_eb )> 0&&_gcb (_eb [1:],_ff ,_ebb ));};_eb =_eb [1:];_ff =_ff [1:];};return len (_eb )==0&&len (_ff )==0;};func MatchSimple (pattern ,name string )bool {if pattern ==""{return name ==pattern ;};if pattern =="\u002a"{return true ;};_g :=make ([]rune ,0,len (name ));_ac :=make ([]rune ,0,len (pattern ));for _ ,_e :=range name {_g =append (_g ,_e );};for _ ,_d :=range pattern {_ac =append (_ac ,_d );};_cc :=true ;return _gcb (_g ,_ac ,_cc );};