< Summary

Class:Microsoft.Azure.Search.Models.AnalyzerName
Assembly:Microsoft.Azure.Search.Service
File(s):C:\Git\azure-sdk-for-net\sdk\search\Microsoft.Azure.Search.Service\src\Customizations\Indexes\Models\AnalyzerName.cs
Covered lines:102
Uncovered lines:3
Coverable lines:105
Total lines:1044
Line coverage:97.1% (102 of 105)
Covered branches:1
Total branches:2
Branch coverage:50% (1 of 2)

Metrics

MethodCyclomatic complexity Line coverage Branch coverage
.cctor()-100%100%
.ctor(...)-100%100%
op_Implicit(...)-100%100%
op_Explicit(...)-0%100%
op_Equality(...)-100%100%
op_Inequality(...)-0%100%
Equals(...)-100%100%
Equals(...)-100%50%
GetHashCode()-0%100%
ToString()-100%100%

File(s)

C:\Git\azure-sdk-for-net\sdk\search\Microsoft.Azure.Search.Service\src\Customizations\Indexes\Models\AnalyzerName.cs

#LineLine coverage
 1// Copyright (c) Microsoft Corporation. All rights reserved.
 2// Licensed under the MIT License. See License.txt in the project root for
 3// license information.
 4
 5namespace Microsoft.Azure.Search.Models
 6{
 7    using System;
 8    using Microsoft.Azure.Search.Common;
 9    using Newtonsoft.Json;
 10    using Serialization;
 11
 12    /// <summary>
 13    /// Defines the names of all text analyzers supported by Azure Cognitive Search.
 14    /// <see href="https://docs.microsoft.com/rest/api/searchservice/Language-support"/>
 15    /// </summary>
 16    [JsonConverter(typeof(ExtensibleEnumConverter<AnalyzerName>))]
 17    public struct AnalyzerName : IEquatable<AnalyzerName>
 18    {
 19        private readonly string _value;
 20
 21        // MAINTENANCE NOTE: Keep the language analyzers ordered the same as the table on this page:
 22        // https://docs.microsoft.com/rest/api/searchservice/Language-support
 23        // The other pre-defined analyzers come next, and should be ordered the same as the table on this page:
 24        // https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search
 25
 26        /// <summary>
 27        /// Microsoft analyzer for Arabic.
 28        /// </summary>
 229        public static readonly AnalyzerName ArMicrosoft = new AnalyzerName(AsString.ArMicrosoft);
 30
 31        /// <summary>
 32        /// Lucene analyzer for Arabic.
 33        /// </summary>
 234        public static readonly AnalyzerName ArLucene = new AnalyzerName(AsString.ArLucene);
 35
 36        /// <summary>
 37        /// Lucene analyzer for Armenian.
 38        /// </summary>
 239        public static readonly AnalyzerName HyLucene = new AnalyzerName(AsString.HyLucene);
 40
 41        /// <summary>
 42        /// Microsoft analyzer for Bangla.
 43        /// </summary>
 244        public static readonly AnalyzerName BnMicrosoft = new AnalyzerName(AsString.BnMicrosoft);
 45
 46        /// <summary>
 47        /// Lucene analyzer for Basque.
 48        /// </summary>
 249        public static readonly AnalyzerName EuLucene = new AnalyzerName(AsString.EuLucene);
 50
 51        /// <summary>
 52        /// Microsoft analyzer for Bulgarian.
 53        /// </summary>
 254        public static readonly AnalyzerName BgMicrosoft = new AnalyzerName(AsString.BgMicrosoft);
 55
 56        /// <summary>
 57        /// Lucene analyzer for Bulgarian.
 58        /// </summary>
 259        public static readonly AnalyzerName BgLucene = new AnalyzerName(AsString.BgLucene);
 60
 61        /// <summary>
 62        /// Microsoft analyzer for Catalan.
 63        /// </summary>
 264        public static readonly AnalyzerName CaMicrosoft = new AnalyzerName(AsString.CaMicrosoft);
 65
 66        /// <summary>
 67        /// Lucene analyzer for Catalan.
 68        /// </summary>
 269        public static readonly AnalyzerName CaLucene = new AnalyzerName(AsString.CaLucene);
 70
 71        /// <summary>
 72        /// Microsoft analyzer for Chinese (Simplified).
 73        /// </summary>
 274        public static readonly AnalyzerName ZhHansMicrosoft = new AnalyzerName(AsString.ZhHansMicrosoft);
 75
 76        /// <summary>
 77        /// Lucene analyzer for Chinese (Simplified).
 78        /// </summary>
 279        public static readonly AnalyzerName ZhHansLucene = new AnalyzerName(AsString.ZhHansLucene);
 80
 81        /// <summary>
 82        /// Microsoft analyzer for Chinese (Traditional).
 83        /// </summary>
 284        public static readonly AnalyzerName ZhHantMicrosoft = new AnalyzerName(AsString.ZhHantMicrosoft);
 85
 86        /// <summary>
 87        /// Lucene analyzer for Chinese (Traditional).
 88        /// </summary>
 289        public static readonly AnalyzerName ZhHantLucene = new AnalyzerName(AsString.ZhHantLucene);
 90
 91        /// <summary>
 92        /// Microsoft analyzer for Croatian.
 93        /// </summary>
 294        public static readonly AnalyzerName HrMicrosoft = new AnalyzerName(AsString.HrMicrosoft);
 95
 96        /// <summary>
 97        /// Microsoft analyzer for Czech.
 98        /// </summary>
 299        public static readonly AnalyzerName CsMicrosoft = new AnalyzerName(AsString.CsMicrosoft);
 100
 101        /// <summary>
 102        /// Lucene analyzer for Czech.
 103        /// </summary>
 2104        public static readonly AnalyzerName CsLucene = new AnalyzerName(AsString.CsLucene);
 105
 106        /// <summary>
 107        /// Microsoft analyzer for Danish.
 108        /// </summary>
 2109        public static readonly AnalyzerName DaMicrosoft = new AnalyzerName(AsString.DaMicrosoft);
 110
 111        /// <summary>
 112        /// Lucene analyzer for Danish.
 113        /// </summary>
 2114        public static readonly AnalyzerName DaLucene = new AnalyzerName(AsString.DaLucene);
 115
 116        /// <summary>
 117        /// Microsoft analyzer for Dutch.
 118        /// </summary>
 2119        public static readonly AnalyzerName NlMicrosoft = new AnalyzerName(AsString.NlMicrosoft);
 120
 121        /// <summary>
 122        /// Lucene analyzer for Dutch.
 123        /// </summary>
 2124        public static readonly AnalyzerName NlLucene = new AnalyzerName(AsString.NlLucene);
 125
 126        /// <summary>
 127        /// Microsoft analyzer for English.
 128        /// </summary>
 2129        public static readonly AnalyzerName EnMicrosoft = new AnalyzerName(AsString.EnMicrosoft);
 130
 131        /// <summary>
 132        /// Lucene analyzer for English.
 133        /// </summary>
 2134        public static readonly AnalyzerName EnLucene = new AnalyzerName(AsString.EnLucene);
 135
 136        /// <summary>
 137        /// Microsoft analyzer for Estonian.
 138        /// </summary>
 2139        public static readonly AnalyzerName EtMicrosoft = new AnalyzerName(AsString.EtMicrosoft);
 140
 141        /// <summary>
 142        /// Microsoft analyzer for Finnish.
 143        /// </summary>
 2144        public static readonly AnalyzerName FiMicrosoft = new AnalyzerName(AsString.FiMicrosoft);
 145
 146        /// <summary>
 147        /// Lucene analyzer for Finnish.
 148        /// </summary>
 2149        public static readonly AnalyzerName FiLucene = new AnalyzerName(AsString.FiLucene);
 150
 151        /// <summary>
 152        /// Microsoft analyzer for French.
 153        /// </summary>
 2154        public static readonly AnalyzerName FrMicrosoft = new AnalyzerName(AsString.FrMicrosoft);
 155
 156        /// <summary>
 157        /// Lucene analyzer for French.
 158        /// </summary>
 2159        public static readonly AnalyzerName FrLucene = new AnalyzerName(AsString.FrLucene);
 160
 161        /// <summary>
 162        /// Lucene analyzer for Galician.
 163        /// </summary>
 2164        public static readonly AnalyzerName GlLucene = new AnalyzerName(AsString.GlLucene);
 165
 166        /// <summary>
 167        /// Microsoft analyzer for German.
 168        /// </summary>
 2169        public static readonly AnalyzerName DeMicrosoft = new AnalyzerName(AsString.DeMicrosoft);
 170
 171        /// <summary>
 172        /// Lucene analyzer for German.
 173        /// </summary>
 2174        public static readonly AnalyzerName DeLucene = new AnalyzerName(AsString.DeLucene);
 175
 176        /// <summary>
 177        /// Microsoft analyzer for Greek.
 178        /// </summary>
 2179        public static readonly AnalyzerName ElMicrosoft = new AnalyzerName(AsString.ElMicrosoft);
 180
 181        /// <summary>
 182        /// Lucene analyzer for Greek.
 183        /// </summary>
 2184        public static readonly AnalyzerName ElLucene = new AnalyzerName(AsString.ElLucene);
 185
 186        /// <summary>
 187        /// Microsoft analyzer for Gujarati.
 188        /// </summary>
 2189        public static readonly AnalyzerName GuMicrosoft = new AnalyzerName(AsString.GuMicrosoft);
 190
 191        /// <summary>
 192        /// Microsoft analyzer for Hebrew.
 193        /// </summary>
 2194        public static readonly AnalyzerName HeMicrosoft = new AnalyzerName(AsString.HeMicrosoft);
 195
 196        /// <summary>
 197        /// Microsoft analyzer for Hindi.
 198        /// </summary>
 2199        public static readonly AnalyzerName HiMicrosoft = new AnalyzerName(AsString.HiMicrosoft);
 200
 201        /// <summary>
 202        /// Lucene analyzer for Hindi.
 203        /// </summary>
 2204        public static readonly AnalyzerName HiLucene = new AnalyzerName(AsString.HiLucene);
 205
 206        /// <summary>
 207        /// Microsoft analyzer for Hungarian.
 208        /// </summary>
 2209        public static readonly AnalyzerName HuMicrosoft = new AnalyzerName(AsString.HuMicrosoft);
 210
 211        /// <summary>
 212        /// Lucene analyzer for Hungarian.
 213        /// </summary>
 2214        public static readonly AnalyzerName HuLucene = new AnalyzerName(AsString.HuLucene);
 215
 216        /// <summary>
 217        /// Microsoft analyzer for Icelandic.
 218        /// </summary>
 2219        public static readonly AnalyzerName IsMicrosoft = new AnalyzerName(AsString.IsMicrosoft);
 220
 221        /// <summary>
 222        /// Microsoft analyzer for Indonesian (Bahasa).
 223        /// </summary>
 2224        public static readonly AnalyzerName IdMicrosoft = new AnalyzerName(AsString.IdMicrosoft);
 225
 226        /// <summary>
 227        /// Lucene analyzer for Indonesian.
 228        /// </summary>
 2229        public static readonly AnalyzerName IdLucene = new AnalyzerName(AsString.IdLucene);
 230
 231        /// <summary>
 232        /// Lucene analyzer for Irish.
 233        /// </summary>
 2234        public static readonly AnalyzerName GaLucene = new AnalyzerName(AsString.GaLucene);
 235
 236        /// <summary>
 237        /// Microsoft analyzer for Italian.
 238        /// </summary>
 2239        public static readonly AnalyzerName ItMicrosoft = new AnalyzerName(AsString.ItMicrosoft);
 240
 241        /// <summary>
 242        /// Lucene analyzer for Italian.
 243        /// </summary>
 2244        public static readonly AnalyzerName ItLucene = new AnalyzerName(AsString.ItLucene);
 245
 246        /// <summary>
 247        /// Microsoft analyzer for Japanese.
 248        /// </summary>
 2249        public static readonly AnalyzerName JaMicrosoft = new AnalyzerName(AsString.JaMicrosoft);
 250
 251        /// <summary>
 252        /// Lucene analyzer for Japanese.
 253        /// </summary>
 2254        public static readonly AnalyzerName JaLucene = new AnalyzerName(AsString.JaLucene);
 255
 256        /// <summary>
 257        /// Microsoft analyzer for Kannada.
 258        /// </summary>
 2259        public static readonly AnalyzerName KnMicrosoft = new AnalyzerName(AsString.KnMicrosoft);
 260
 261        /// <summary>
 262        /// Microsoft analyzer for Korean.
 263        /// </summary>
 2264        public static readonly AnalyzerName KoMicrosoft = new AnalyzerName(AsString.KoMicrosoft);
 265
 266        /// <summary>
 267        /// Lucene analyzer for Korean.
 268        /// </summary>
 2269        public static readonly AnalyzerName KoLucene = new AnalyzerName(AsString.KoLucene);
 270
 271        /// <summary>
 272        /// Microsoft analyzer for Latvian.
 273        /// </summary>
 2274        public static readonly AnalyzerName LvMicrosoft = new AnalyzerName(AsString.LvMicrosoft);
 275
 276        /// <summary>
 277        /// Lucene analyzer for Latvian.
 278        /// </summary>
 2279        public static readonly AnalyzerName LvLucene = new AnalyzerName(AsString.LvLucene);
 280
 281        /// <summary>
 282        /// Microsoft analyzer for Lithuanian.
 283        /// </summary>
 2284        public static readonly AnalyzerName LtMicrosoft = new AnalyzerName(AsString.LtMicrosoft);
 285
 286        /// <summary>
 287        /// Microsoft analyzer for Malayalam.
 288        /// </summary>
 2289        public static readonly AnalyzerName MlMicrosoft = new AnalyzerName(AsString.MlMicrosoft);
 290
 291        /// <summary>
 292        /// Microsoft analyzer for Malay (Latin).
 293        /// </summary>
 2294        public static readonly AnalyzerName MsMicrosoft = new AnalyzerName(AsString.MsMicrosoft);
 295
 296        /// <summary>
 297        /// Microsoft analyzer for Marathi.
 298        /// </summary>
 2299        public static readonly AnalyzerName MrMicrosoft = new AnalyzerName(AsString.MrMicrosoft);
 300
 301        /// <summary>
 302        /// Microsoft analyzer for Norwegian (Bokmål).
 303        /// </summary>
 2304        public static readonly AnalyzerName NbMicrosoft = new AnalyzerName(AsString.NbMicrosoft);
 305
 306        /// <summary>
 307        /// Lucene analyzer for Norwegian.
 308        /// </summary>
 2309        public static readonly AnalyzerName NoLucene = new AnalyzerName(AsString.NoLucene);
 310
 311        /// <summary>
 312        /// Lucene analyzer for Persian.
 313        /// </summary>
 2314        public static readonly AnalyzerName FaLucene = new AnalyzerName(AsString.FaLucene);
 315
 316        /// <summary>
 317        /// Microsoft analyzer for Polish.
 318        /// </summary>
 2319        public static readonly AnalyzerName PlMicrosoft = new AnalyzerName(AsString.PlMicrosoft);
 320
 321        /// <summary>
 322        /// Lucene analyzer for Polish.
 323        /// </summary>
 2324        public static readonly AnalyzerName PlLucene = new AnalyzerName(AsString.PlLucene);
 325
 326        /// <summary>
 327        /// Microsoft analyzer for Portuguese (Brazil).
 328        /// </summary>
 2329        public static readonly AnalyzerName PtBrMicrosoft = new AnalyzerName(AsString.PtBrMicrosoft);
 330
 331        /// <summary>
 332        /// Lucene analyzer for Portuguese (Brazil).
 333        /// </summary>
 2334        public static readonly AnalyzerName PtBRLucene = new AnalyzerName(AsString.PtBRLucene);
 335
 336        /// <summary>
 337        /// Microsoft analyzer for Portuguese (Portugal).
 338        /// </summary>
 2339        public static readonly AnalyzerName PtPtMicrosoft = new AnalyzerName(AsString.PtPtMicrosoft);
 340
 341        /// <summary>
 342        /// Lucene analyzer for Portuguese (Portugal).
 343        /// </summary>
 2344        public static readonly AnalyzerName PtPTLucene = new AnalyzerName(AsString.PtPTLucene);
 345
 346        /// <summary>
 347        /// Microsoft analyzer for Punjabi.
 348        /// </summary>
 2349        public static readonly AnalyzerName PaMicrosoft = new AnalyzerName(AsString.PaMicrosoft);
 350
 351        /// <summary>
 352        /// Microsoft analyzer for Romanian.
 353        /// </summary>
 2354        public static readonly AnalyzerName RoMicrosoft = new AnalyzerName(AsString.RoMicrosoft);
 355
 356        /// <summary>
 357        /// Lucene analyzer for Romanian.
 358        /// </summary>
 2359        public static readonly AnalyzerName RoLucene = new AnalyzerName(AsString.RoLucene);
 360
 361        /// <summary>
 362        /// Microsoft analyzer for Russian.
 363        /// </summary>
 2364        public static readonly AnalyzerName RuMicrosoft = new AnalyzerName(AsString.RuMicrosoft);
 365
 366        /// <summary>
 367        /// Lucene analyzer for Russian.
 368        /// </summary>
 2369        public static readonly AnalyzerName RuLucene = new AnalyzerName(AsString.RuLucene);
 370
 371        /// <summary>
 372        /// Microsoft analyzer for Serbian (Cyrillic).
 373        /// </summary>
 2374        public static readonly AnalyzerName SrCyrillicMicrosoft = new AnalyzerName(AsString.SrCyrillicMicrosoft);
 375
 376        /// <summary>
 377        /// Microsoft analyzer for Serbian (Latin).
 378        /// </summary>
 2379        public static readonly AnalyzerName SrLatinMicrosoft = new AnalyzerName(AsString.SrLatinMicrosoft);
 380
 381        /// <summary>
 382        /// Microsoft analyzer for Slovak.
 383        /// </summary>
 2384        public static readonly AnalyzerName SkMicrosoft = new AnalyzerName(AsString.SkMicrosoft);
 385
 386        /// <summary>
 387        /// Microsoft analyzer for Slovenian.
 388        /// </summary>
 2389        public static readonly AnalyzerName SlMicrosoft = new AnalyzerName(AsString.SlMicrosoft);
 390
 391        /// <summary>
 392        /// Microsoft analyzer for Spanish.
 393        /// </summary>
 2394        public static readonly AnalyzerName EsMicrosoft = new AnalyzerName(AsString.EsMicrosoft);
 395
 396        /// <summary>
 397        /// Lucene analyzer for Spanish.
 398        /// </summary>
 2399        public static readonly AnalyzerName EsLucene = new AnalyzerName(AsString.EsLucene);
 400
 401        /// <summary>
 402        /// Microsoft analyzer for Swedish.
 403        /// </summary>
 2404        public static readonly AnalyzerName SvMicrosoft = new AnalyzerName(AsString.SvMicrosoft);
 405
 406        /// <summary>
 407        /// Lucene analyzer for Swedish.
 408        /// </summary>
 2409        public static readonly AnalyzerName SvLucene = new AnalyzerName(AsString.SvLucene);
 410
 411        /// <summary>
 412        /// Microsoft analyzer for Tamil.
 413        /// </summary>
 2414        public static readonly AnalyzerName TaMicrosoft = new AnalyzerName(AsString.TaMicrosoft);
 415
 416        /// <summary>
 417        /// Microsoft analyzer for Telugu.
 418        /// </summary>
 2419        public static readonly AnalyzerName TeMicrosoft = new AnalyzerName(AsString.TeMicrosoft);
 420
 421        /// <summary>
 422        /// Microsoft analyzer for Thai.
 423        /// </summary>
 2424        public static readonly AnalyzerName ThMicrosoft = new AnalyzerName(AsString.ThMicrosoft);
 425
 426        /// <summary>
 427        /// Lucene analyzer for Thai.
 428        /// </summary>
 2429        public static readonly AnalyzerName ThLucene = new AnalyzerName(AsString.ThLucene);
 430
 431        /// <summary>
 432        /// Microsoft analyzer for Turkish.
 433        /// </summary>
 2434        public static readonly AnalyzerName TrMicrosoft = new AnalyzerName(AsString.TrMicrosoft);
 435
 436        /// <summary>
 437        /// Lucene analyzer for Turkish.
 438        /// </summary>
 2439        public static readonly AnalyzerName TrLucene = new AnalyzerName(AsString.TrLucene);
 440
 441        /// <summary>
 442        /// Microsoft analyzer for Ukranian.
 443        /// </summary>
 2444        public static readonly AnalyzerName UkMicrosoft = new AnalyzerName(AsString.UkMicrosoft);
 445
 446        /// <summary>
 447        /// Microsoft analyzer for Urdu.
 448        /// </summary>
 2449        public static readonly AnalyzerName UrMicrosoft = new AnalyzerName(AsString.UrMicrosoft);
 450
 451        /// <summary>
 452        /// Microsoft analyzer for Vietnamese.
 453        /// </summary>
 2454        public static readonly AnalyzerName ViMicrosoft = new AnalyzerName(AsString.ViMicrosoft);
 455
 456        /// <summary>
 457        /// Standard Lucene analyzer.
 458        /// </summary>
 2459        public static readonly AnalyzerName StandardLucene = new AnalyzerName(AsString.StandardLucene);
 460
 461        /// <summary>
 462        /// Standard ASCII Folding Lucene analyzer.
 463        /// <see href="https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers" />
 464        /// </summary>
 2465        public static readonly AnalyzerName StandardAsciiFoldingLucene =
 2466            new AnalyzerName(AsString.StandardAsciiFoldingLucene);
 467
 468        /// <summary>
 469        /// Treats the entire content of a field as a single token. This is useful
 470        /// for data like zip codes, ids, and some product names.
 471        /// <see href="http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnal
 472        /// </summary>
 2473        public static readonly AnalyzerName Keyword = new AnalyzerName(AsString.Keyword);
 474
 475        /// <summary>
 476        /// Flexibly separates text into terms via a regular expression pattern.
 477        /// <see href="http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/Pa
 478        /// </summary>
 2479        public static readonly AnalyzerName Pattern = new AnalyzerName(AsString.Pattern);
 480
 481        /// <summary>
 482        /// Divides text at non-letters and converts them to lower case.
 483        /// <see href="http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnaly
 484        /// </summary>
 2485        public static readonly AnalyzerName Simple = new AnalyzerName(AsString.Simple);
 486
 487        /// <summary>
 488        /// Divides text at non-letters; Applies the lowercase and stopword token filters.
 489        /// <see href="http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyze
 490        /// </summary>
 2491        public static readonly AnalyzerName Stop = new AnalyzerName(AsString.Stop);
 492
 493        /// <summary>
 494        /// An analyzer that uses the whitespace tokenizer.
 495        /// <see href="http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceA
 496        /// </summary>
 2497        public static readonly AnalyzerName Whitespace = new AnalyzerName(AsString.Whitespace);
 498
 499        /// <summary>
 500        /// The names of all of the analyzers as plain strings.
 501        /// </summary>
 502        /// <remarks>
 503        /// When defining an index with an attributed model, you need to specify analyzers by name, because
 504        /// .NET custom attributes cannot be constructed with a reference to a static field. (Only constant
 505        /// values from a limited range of types are supported.)
 506        /// </remarks>
 507        public static class AsString
 508        {
 509            /// <summary>
 510            /// Microsoft analyzer for Arabic.
 511            /// </summary>
 512            public const string ArMicrosoft = "ar.microsoft";
 513
 514            /// <summary>
 515            /// Lucene analyzer for Arabic.
 516            /// </summary>
 517            public const string ArLucene = "ar.lucene";
 518
 519            /// <summary>
 520            /// Lucene analyzer for Armenian.
 521            /// </summary>
 522            public const string HyLucene = "hy.lucene";
 523
 524            /// <summary>
 525            /// Microsoft analyzer for Bangla.
 526            /// </summary>
 527            public const string BnMicrosoft = "bn.microsoft";
 528
 529            /// <summary>
 530            /// Lucene analyzer for Basque.
 531            /// </summary>
 532            public const string EuLucene = "eu.lucene";
 533
 534            /// <summary>
 535            /// Microsoft analyzer for Bulgarian.
 536            /// </summary>
 537            public const string BgMicrosoft = "bg.microsoft";
 538
 539            /// <summary>
 540            /// Lucene analyzer for Bulgarian.
 541            /// </summary>
 542            public const string BgLucene = "bg.lucene";
 543
 544            /// <summary>
 545            /// Microsoft analyzer for Catalan.
 546            /// </summary>
 547            public const string CaMicrosoft = "ca.microsoft";
 548
 549            /// <summary>
 550            /// Lucene analyzer for Catalan.
 551            /// </summary>
 552            public const string CaLucene = "ca.lucene";
 553
 554            /// <summary>
 555            /// Microsoft analyzer for Chinese (Simplified).
 556            /// </summary>
 557            public const string ZhHansMicrosoft = "zh-Hans.microsoft";
 558
 559            /// <summary>
 560            /// Lucene analyzer for Chinese (Simplified).
 561            /// </summary>
 562            public const string ZhHansLucene = "zh-Hans.lucene";
 563
 564            /// <summary>
 565            /// Microsoft analyzer for Chinese (Traditional).
 566            /// </summary>
 567            public const string ZhHantMicrosoft = "zh-Hant.microsoft";
 568
 569            /// <summary>
 570            /// Lucene analyzer for Chinese (Traditional).
 571            /// </summary>
 572            public const string ZhHantLucene = "zh-Hant.lucene";
 573
 574            /// <summary>
 575            /// Microsoft analyzer for Croatian.
 576            /// </summary>
 577            public const string HrMicrosoft = "hr.microsoft";
 578
 579            /// <summary>
 580            /// Microsoft analyzer for Czech.
 581            /// </summary>
 582            public const string CsMicrosoft = "cs.microsoft";
 583
 584            /// <summary>
 585            /// Lucene analyzer for Czech.
 586            /// </summary>
 587            public const string CsLucene = "cs.lucene";
 588
 589            /// <summary>
 590            /// Microsoft analyzer for Danish.
 591            /// </summary>
 592            public const string DaMicrosoft = "da.microsoft";
 593
 594            /// <summary>
 595            /// Lucene analyzer for Danish.
 596            /// </summary>
 597            public const string DaLucene = "da.lucene";
 598
 599            /// <summary>
 600            /// Microsoft analyzer for Dutch.
 601            /// </summary>
 602            public const string NlMicrosoft = "nl.microsoft";
 603
 604            /// <summary>
 605            /// Lucene analyzer for Dutch.
 606            /// </summary>
 607            public const string NlLucene = "nl.lucene";
 608
 609            /// <summary>
 610            /// Microsoft analyzer for English.
 611            /// </summary>
 612            public const string EnMicrosoft = "en.microsoft";
 613
 614            /// <summary>
 615            /// Lucene analyzer for English.
 616            /// </summary>
 617            public const string EnLucene = "en.lucene";
 618
 619            /// <summary>
 620            /// Microsoft analyzer for Estonian.
 621            /// </summary>
 622            public const string EtMicrosoft = "et.microsoft";
 623
 624            /// <summary>
 625            /// Microsoft analyzer for Finnish.
 626            /// </summary>
 627            public const string FiMicrosoft = "fi.microsoft";
 628
 629            /// <summary>
 630            /// Lucene analyzer for Finnish.
 631            /// </summary>
 632            public const string FiLucene = "fi.lucene";
 633
 634            /// <summary>
 635            /// Microsoft analyzer for French.
 636            /// </summary>
 637            public const string FrMicrosoft = "fr.microsoft";
 638
 639            /// <summary>
 640            /// Lucene analyzer for French.
 641            /// </summary>
 642            public const string FrLucene = "fr.lucene";
 643
 644            /// <summary>
 645            /// Lucene analyzer for Galician.
 646            /// </summary>
 647            public const string GlLucene = "gl.lucene";
 648
 649            /// <summary>
 650            /// Microsoft analyzer for German.
 651            /// </summary>
 652            public const string DeMicrosoft = "de.microsoft";
 653
 654            /// <summary>
 655            /// Lucene analyzer for German.
 656            /// </summary>
 657            public const string DeLucene = "de.lucene";
 658
 659            /// <summary>
 660            /// Microsoft analyzer for Greek.
 661            /// </summary>
 662            public const string ElMicrosoft = "el.microsoft";
 663
 664            /// <summary>
 665            /// Lucene analyzer for Greek.
 666            /// </summary>
 667            public const string ElLucene = "el.lucene";
 668
 669            /// <summary>
 670            /// Microsoft analyzer for Gujarati.
 671            /// </summary>
 672            public const string GuMicrosoft = "gu.microsoft";
 673
 674            /// <summary>
 675            /// Microsoft analyzer for Hebrew.
 676            /// </summary>
 677            public const string HeMicrosoft = "he.microsoft";
 678
 679            /// <summary>
 680            /// Microsoft analyzer for Hindi.
 681            /// </summary>
 682            public const string HiMicrosoft = "hi.microsoft";
 683
 684            /// <summary>
 685            /// Lucene analyzer for Hindi.
 686            /// </summary>
 687            public const string HiLucene = "hi.lucene";
 688
 689            /// <summary>
 690            /// Microsoft analyzer for Hungarian.
 691            /// </summary>
 692            public const string HuMicrosoft = "hu.microsoft";
 693
 694            /// <summary>
 695            /// Lucene analyzer for Hungarian.
 696            /// </summary>
 697            public const string HuLucene = "hu.lucene";
 698
 699            /// <summary>
 700            /// Microsoft analyzer for Icelandic.
 701            /// </summary>
 702            public const string IsMicrosoft = "is.microsoft";
 703
 704            /// <summary>
 705            /// Microsoft analyzer for Indonesian (Bahasa).
 706            /// </summary>
 707            public const string IdMicrosoft = "id.microsoft";
 708
 709            /// <summary>
 710            /// Lucene analyzer for Indonesian.
 711            /// </summary>
 712            public const string IdLucene = "id.lucene";
 713
 714            /// <summary>
 715            /// Lucene analyzer for Irish.
 716            /// </summary>
 717            public const string GaLucene = "ga.lucene";
 718
 719            /// <summary>
 720            /// Microsoft analyzer for Italian.
 721            /// </summary>
 722            public const string ItMicrosoft = "it.microsoft";
 723
 724            /// <summary>
 725            /// Lucene analyzer for Italian.
 726            /// </summary>
 727            public const string ItLucene = "it.lucene";
 728
 729            /// <summary>
 730            /// Microsoft analyzer for Japanese.
 731            /// </summary>
 732            public const string JaMicrosoft = "ja.microsoft";
 733
 734            /// <summary>
 735            /// Lucene analyzer for Japanese.
 736            /// </summary>
 737            public const string JaLucene = "ja.lucene";
 738
 739            /// <summary>
 740            /// Microsoft analyzer for Kannada.
 741            /// </summary>
 742            public const string KnMicrosoft = "kn.microsoft";
 743
 744            /// <summary>
 745            /// Microsoft analyzer for Korean.
 746            /// </summary>
 747            public const string KoMicrosoft = "ko.microsoft";
 748
 749            /// <summary>
 750            /// Lucene analyzer for Korean.
 751            /// </summary>
 752            public const string KoLucene = "ko.lucene";
 753
 754            /// <summary>
 755            /// Microsoft analyzer for Latvian.
 756            /// </summary>
 757            public const string LvMicrosoft = "lv.microsoft";
 758
 759            /// <summary>
 760            /// Lucene analyzer for Latvian.
 761            /// </summary>
 762            public const string LvLucene = "lv.lucene";
 763
 764            /// <summary>
 765            /// Microsoft analyzer for Lithuanian.
 766            /// </summary>
 767            public const string LtMicrosoft = "lt.microsoft";
 768
 769            /// <summary>
 770            /// Microsoft analyzer for Malayalam.
 771            /// </summary>
 772            public const string MlMicrosoft = "ml.microsoft";
 773
 774            /// <summary>
 775            /// Microsoft analyzer for Malay (Latin).
 776            /// </summary>
 777            public const string MsMicrosoft = "ms.microsoft";
 778
 779            /// <summary>
 780            /// Microsoft analyzer for Marathi.
 781            /// </summary>
 782            public const string MrMicrosoft = "mr.microsoft";
 783
 784            /// <summary>
 785            /// Microsoft analyzer for Norwegian (Bokmål).
 786            /// </summary>
 787            public const string NbMicrosoft = "nb.microsoft";
 788
 789            /// <summary>
 790            /// Lucene analyzer for Norwegian.
 791            /// </summary>
 792            public const string NoLucene = "no.lucene";
 793
 794            /// <summary>
 795            /// Lucene analyzer for Persian.
 796            /// </summary>
 797            public const string FaLucene = "fa.lucene";
 798
 799            /// <summary>
 800            /// Microsoft analyzer for Polish.
 801            /// </summary>
 802            public const string PlMicrosoft = "pl.microsoft";
 803
 804            /// <summary>
 805            /// Lucene analyzer for Polish.
 806            /// </summary>
 807            public const string PlLucene = "pl.lucene";
 808
 809            /// <summary>
 810            /// Microsoft analyzer for Portuguese (Brazil).
 811            /// </summary>
 812            public const string PtBrMicrosoft = "pt-BR.microsoft";
 813
 814            /// <summary>
 815            /// Lucene analyzer for Portuguese (Brazil).
 816            /// </summary>
 817            public const string PtBRLucene = "pt-BR.lucene";
 818
 819            /// <summary>
 820            /// Microsoft analyzer for Portuguese (Portugal).
 821            /// </summary>
 822            public const string PtPtMicrosoft = "pt-PT.microsoft";
 823
 824            /// <summary>
 825            /// Lucene analyzer for Portuguese (Portugal).
 826            /// </summary>
 827            public const string PtPTLucene = "pt-PT.lucene";
 828
 829            /// <summary>
 830            /// Microsoft analyzer for Punjabi.
 831            /// </summary>
 832            public const string PaMicrosoft = "pa.microsoft";
 833
 834            /// <summary>
 835            /// Microsoft analyzer for Romanian.
 836            /// </summary>
 837            public const string RoMicrosoft = "ro.microsoft";
 838
 839            /// <summary>
 840            /// Lucene analyzer for Romanian.
 841            /// </summary>
 842            public const string RoLucene = "ro.lucene";
 843
 844            /// <summary>
 845            /// Microsoft analyzer for Russian.
 846            /// </summary>
 847            public const string RuMicrosoft = "ru.microsoft";
 848
 849            /// <summary>
 850            /// Lucene analyzer for Russian.
 851            /// </summary>
 852            public const string RuLucene = "ru.lucene";
 853
 854            /// <summary>
 855            /// Microsoft analyzer for Serbian (Cyrillic).
 856            /// </summary>
 857            public const string SrCyrillicMicrosoft = "sr-cyrillic.microsoft";
 858
 859            /// <summary>
 860            /// Microsoft analyzer for Serbian (Latin).
 861            /// </summary>
 862            public const string SrLatinMicrosoft = "sr-latin.microsoft";
 863
 864            /// <summary>
 865            /// Microsoft analyzer for Slovak.
 866            /// </summary>
 867            public const string SkMicrosoft = "sk.microsoft";
 868
 869            /// <summary>
 870            /// Microsoft analyzer for Slovenian.
 871            /// </summary>
 872            public const string SlMicrosoft = "sl.microsoft";
 873
 874            /// <summary>
 875            /// Microsoft analyzer for Spanish.
 876            /// </summary>
 877            public const string EsMicrosoft = "es.microsoft";
 878
 879            /// <summary>
 880            /// Lucene analyzer for Spanish.
 881            /// </summary>
 882            public const string EsLucene = "es.lucene";
 883
 884            /// <summary>
 885            /// Microsoft analyzer for Swedish.
 886            /// </summary>
 887            public const string SvMicrosoft = "sv.microsoft";
 888
 889            /// <summary>
 890            /// Lucene analyzer for Swedish.
 891            /// </summary>
 892            public const string SvLucene = "sv.lucene";
 893
 894            /// <summary>
 895            /// Microsoft analyzer for Tamil.
 896            /// </summary>
 897            public const string TaMicrosoft = "ta.microsoft";
 898
 899            /// <summary>
 900            /// Microsoft analyzer for Telugu.
 901            /// </summary>
 902            public const string TeMicrosoft = "te.microsoft";
 903
 904            /// <summary>
 905            /// Microsoft analyzer for Thai.
 906            /// </summary>
 907            public const string ThMicrosoft = "th.microsoft";
 908
 909            /// <summary>
 910            /// Lucene analyzer for Thai.
 911            /// </summary>
 912            public const string ThLucene = "th.lucene";
 913
 914            /// <summary>
 915            /// Microsoft analyzer for Turkish.
 916            /// </summary>
 917            public const string TrMicrosoft = "tr.microsoft";
 918
 919            /// <summary>
 920            /// Lucene analyzer for Turkish.
 921            /// </summary>
 922            public const string TrLucene = "tr.lucene";
 923
 924            /// <summary>
 925            /// Microsoft analyzer for Ukranian.
 926            /// </summary>
 927            public const string UkMicrosoft = "uk.microsoft";
 928
 929            /// <summary>
 930            /// Microsoft analyzer for Urdu.
 931            /// </summary>
 932            public const string UrMicrosoft = "ur.microsoft";
 933
 934            /// <summary>
 935            /// Microsoft analyzer for Vietnamese.
 936            /// </summary>
 937            public const string ViMicrosoft = "vi.microsoft";
 938
 939            /// <summary>
 940            /// Standard Lucene analyzer.
 941            /// </summary>
 942            public const string StandardLucene = "standard.lucene";
 943
 944            /// <summary>
 945            /// Standard ASCII Folding Lucene analyzer.
 946            /// <see href="https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers"
 947            /// </summary>
 948            public const string StandardAsciiFoldingLucene = "standardasciifolding.lucene";
 949
 950            /// <summary>
 951            /// Treats the entire content of a field as a single token. This is useful
 952            /// for data like zip codes, ids, and some product names.
 953            /// <see href="http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/Keyword
 954            /// </summary>
 955            public const string Keyword = "keyword";
 956
 957            /// <summary>
 958            /// Flexibly separates text into terms via a regular expression pattern.
 959            /// <see href="http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneou
 960            /// </summary>
 961            public const string Pattern = "pattern";
 962
 963            /// <summary>
 964            /// Divides text at non-letters and converts them to lower case.
 965            /// <see href="http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleA
 966            /// </summary>
 967            public const string Simple = "simple";
 968
 969            /// <summary>
 970            /// Divides text at non-letters; Applies the lowercase and stopword token filters.
 971            /// <see href="http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAna
 972            /// </summary>
 973            public const string Stop = "stop";
 974
 975            /// <summary>
 976            /// An analyzer that uses the whitespace tokenizer.
 977            /// <see href="http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/Whitesp
 978            /// </summary>
 979            public const string Whitespace = "whitespace";
 980        }
 981
 982        private AnalyzerName(string name)
 983        {
 9404984            Throw.IfArgumentNull(name, nameof(name));
 9404985            _value = name;
 9404986        }
 987
 988        /// <summary>
 989        /// Defines implicit conversion from string to AnalyzerName.
 990        /// </summary>
 991        /// <param name="value">string to convert.</param>
 992        /// <returns>The string as an AnalyzerName.</returns>
 6850993        public static implicit operator AnalyzerName(string value) => new AnalyzerName(value);
 994
 995        /// <summary>
 996        /// Defines explicit conversion from AnalyzerName to string.
 997        /// </summary>
 998        /// <param name="name">AnalyzerName to convert.</param>
 999        /// <returns>The AnalyzerName as a string.</returns>
 01000        public static explicit operator string(AnalyzerName name) => name.ToString();
 1001
 1002        /// <summary>
 1003        /// Compares two AnalyzerName values for equality.
 1004        /// </summary>
 1005        /// <param name="lhs">The first AnalyzerName to compare.</param>
 1006        /// <param name="rhs">The second AnalyzerName to compare.</param>
 1007        /// <returns>true if the AnalyzerName objects are equal or are both null; false otherwise.</returns>
 721008        public static bool operator ==(AnalyzerName lhs, AnalyzerName rhs) => Equals(lhs, rhs);
 1009
 1010        /// <summary>
 1011        /// Compares two AnalyzerName values for inequality.
 1012        /// </summary>
 1013        /// <param name="lhs">The first AnalyzerName to compare.</param>
 1014        /// <param name="rhs">The second AnalyzerName to compare.</param>
 1015        /// <returns>true if the AnalyzerName objects are not equal; false otherwise.</returns>
 01016        public static bool operator !=(AnalyzerName lhs, AnalyzerName rhs) => !Equals(lhs, rhs);
 1017
 1018        /// <summary>
 1019        /// Compares the AnalyzerName for equality with another AnalyzerName.
 1020        /// </summary>
 1021        /// <param name="other">The AnalyzerName with which to compare.</param>
 1022        /// <returns><c>true</c> if the AnalyzerName objects are equal; otherwise, <c>false</c>.</returns>
 1721023        public bool Equals(AnalyzerName other) => _value == other._value;
 1024
 1025        /// <summary>
 1026        /// Determines whether the specified object is equal to the current object.
 1027        /// </summary>
 1028        /// <param name="obj">The object to compare with the current object.</param>
 1029        /// <returns><c>true</c> if the specified object is equal to the current object; otherwise, <c>false</c>.</retur
 721030        public override bool Equals(object obj) => obj is AnalyzerName ? Equals((AnalyzerName)obj) : false;
 1031
 1032        /// <summary>
 1033        /// Serves as the default hash function.
 1034        /// </summary>
 1035        /// <returns>A hash code for the current object.</returns>
 01036        public override int GetHashCode() => _value.GetHashCode();
 1037
 1038        /// <summary>
 1039        /// Returns a string representation of the AnalyzerName.
 1040        /// </summary>
 1041        /// <returns>The AnalyzerName as a string.</returns>
 28261042        public override string ToString() => _value;
 1043    }
 1044}