[{"data":1,"prerenderedAt":865},["ShallowReactive",2],{"navigation_docs":3,"-features-enum":198,"-features-enum-surround":860},[4,30,81,118,147,171,184],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":6},"Getting Started",false,"/getting-started","1.getting-started",[10,15,20,25],{"title":11,"path":12,"stem":13,"icon":14},"Introduction","/getting-started/introduction","1.getting-started/2.introduction","i-lucide-house",{"title":16,"path":17,"stem":18,"icon":19},"Installation","/getting-started/installation","1.getting-started/3.installation","i-lucide-download",{"title":21,"path":22,"stem":23,"icon":24},"Quick start","/getting-started/quickstart","1.getting-started/4.quickstart","i-lucide-code-xml",{"title":26,"path":27,"stem":28,"icon":29},"Troubleshooting","/getting-started/troubleshooting","1.getting-started/5.troubleshooting","i-lucide-wrench",{"title":31,"icon":6,"path":32,"stem":33,"children":34,"page":6},"Core Features","/core-features","2.core-features",[35,39,43,48,52,56,60,64,68,73,77],{"title":36,"path":37,"stem":38,"icon":24},"Main function","/core-features/main-function","2.core-features/1.main-function",{"title":40,"path":41,"stem":42,"icon":24},"Variables","/core-features/variables","2.core-features/2.variables",{"title":44,"path":45,"stem":46,"icon":47},"Comment","/core-features/comment","2.core-features/3.comment","i-lucide-hash",{"title":49,"path":50,"stem":51,"icon":24},"Conditionals","/core-features/conditionals","2.core-features/4.conditionals",{"title":53,"path":54,"stem":55,"icon":24},"Loops","/core-features/loops","2.core-features/5.loops",{"title":57,"path":58,"stem":59,"icon":24},"Functions","/core-features/functions","2.core-features/6.functions",{"title":61,"path":62,"stem":63,"icon":24},"Pointers","/core-features/pointers","2.core-features/7.pointers",{"title":65,"path":66,"stem":67,"icon":24},"Data types","/core-features/datatypes","2.core-features/8.datatypes",{"title":69,"path":70,"stem":71,"icon":72},"Operators","/core-features/operators","2.core-features/9.operators","i-lucide-percent",{"title":74,"path":75,"stem":76,"icon":24},"Literals","/core-features/a.literals","2.core-features/a.literals",{"title":78,"path":79,"stem":80,"icon":24},"Keywords","/core-features/b.keywords","2.core-features/b.keywords",{"title":82,"icon":6,"path":83,"stem":84,"children":85,"page":6},"Features","/features","3.features",[86,90,94,98,102,106,110,114],{"title":87,"path":88,"stem":89,"icon":24},"Const","/features/const","3.features/1.const",{"title":91,"path":92,"stem":93,"icon":24},"Define","/features/define","3.features/2.define",{"title":95,"path":96,"stem":97,"icon":24},"Enum","/features/enum","3.features/3.enum",{"title":99,"path":100,"stem":101,"icon":24},"Union","/features/union","3.features/4.union",{"title":103,"path":104,"stem":105,"icon":24},"Overloading","/features/overloading","3.features/5.overloading",{"title":107,"path":108,"stem":109,"icon":24},"Lambda","/features/lambda","3.features/6.lambda",{"title":111,"path":112,"stem":113,"icon":24},"Callback","/features/callback","3.features/7.callback",{"title":115,"path":116,"stem":117,"icon":24},"Auto","/features/auto","3.features/8.auto",{"title":119,"icon":6,"path":120,"stem":121,"children":122,"page":6},"Advance Features","/advance","4.advance",[123,127,131,135,139,143],{"title":124,"path":125,"stem":126,"icon":24},"Generic Type","/advance/generic-type","4.advance/1.generic-type",{"title":128,"path":129,"stem":130,"icon":24},"Errors","/advance/error","4.advance/2.error",{"title":132,"path":133,"stem":134,"icon":24},"Annotation","/advance/annotation","4.advance/3.annotation",{"title":136,"path":137,"stem":138,"icon":24},"Variadic Function","/advance/variadic-func","4.advance/4.variadic-func",{"title":140,"path":141,"stem":142,"icon":24},"Module","/advance/module-interface","4.advance/5.module-interface",{"title":144,"path":145,"stem":146,"icon":24},"Operator Overloading","/advance/operator-overloading","4.advance/6.operator-overloading",{"title":148,"icon":6,"path":149,"stem":150,"children":151,"page":6},"Struct","/struct","5.struct",[152,155,159,163,167],{"title":148,"path":153,"stem":154,"icon":24},"/struct/struct","5.struct/1.struct",{"title":156,"path":157,"stem":158,"icon":24},"Methods","/struct/methods","5.struct/2.methods",{"title":160,"path":161,"stem":162,"icon":24},"Init/Deinit","/struct/init-deinit","5.struct/3.init-deinit",{"title":164,"path":165,"stem":166,"icon":24},"Encapsulation","/struct/encapsulation","5.struct/4.encapsulation",{"title":168,"path":169,"stem":170,"icon":24},"Static","/struct/static","5.struct/5.static",{"title":172,"icon":6,"path":173,"stem":174,"children":175,"page":6},"Data Structures","/data-structure","6.data-structure",[176,180],{"title":177,"path":178,"stem":179,"icon":24},"Array","/data-structure/array","6.data-structure/array",{"title":181,"path":182,"stem":183,"icon":24},"Structural Type","/data-structure/strutural-type","6.data-structure/strutural-type",{"title":185,"icon":6,"path":186,"stem":187,"children":188,"page":6},"Standard Libraries","/stdlib","7.stdlib",[189,194],{"title":190,"path":191,"stem":192,"icon":193},"stdlib","/stdlib/stdlib","7.stdlib/stdlib","i-lucide-library-big",{"title":195,"path":196,"stem":197,"icon":24},"syscall","/stdlib/syscall","7.stdlib/syscall",{"id":199,"title":95,"body":200,"description":853,"extension":854,"links":855,"meta":856,"navigation":857,"path":96,"seo":858,"stem":97,"__hash__":859},"docs/3.features/3.enum.md",{"type":201,"value":202,"toc":847},"minimark",[203,208,212,274,278,331,336,441,465,653,663,667,670,840,843],[204,205,207],"h2",{"id":206},"overview","Overview",[209,210,211],"p",{},"An enum is a special user-defined type that represents a group of constants.",[213,214,220],"pre",{"className":215,"code":216,"filename":217,"language":218,"meta":219,"style":219},"language-kh shiki shiki-themes material-theme-lighter one-light one-dark-pro","enum identifier{\n  IDENTIFER,\n  IDENTIFER,\n  ...,\n  IDENTIFER\n}\n","syntax","kh","",[221,222,223,240,249,256,262,268],"code",{"__ignoreMap":219},[224,225,228,232,236],"span",{"class":226,"line":227},"line",1,[224,229,231],{"class":230},"sQsOY","enum",[224,233,235],{"class":234},"s8dPH"," identifier",[224,237,239],{"class":238},"sM89C","{\n",[224,241,243,246],{"class":226,"line":242},2,[224,244,245],{"class":234},"  IDENTIFER",[224,247,248],{"class":238},",\n",[224,250,252,254],{"class":226,"line":251},3,[224,253,245],{"class":234},[224,255,248],{"class":238},[224,257,259],{"class":226,"line":258},4,[224,260,261],{"class":238},"  ...,\n",[224,263,265],{"class":226,"line":264},5,[224,266,267],{"class":234},"  IDENTIFER\n",[224,269,271],{"class":226,"line":270},6,[224,272,273],{"class":238},"}\n",[275,276,277],"tip",{},"You can also assign a value to a constant.",[213,279,281],{"className":215,"code":280,"filename":217,"language":218,"meta":219,"style":219},"enum identifier{\n  IDENTIFER = value,\n  IDENTIFER = value,\n  ...,\n  IDENTIFER = value\n}\n",[221,282,283,291,304,314,318,327],{"__ignoreMap":219},[224,284,285,287,289],{"class":226,"line":227},[224,286,231],{"class":230},[224,288,235],{"class":234},[224,290,239],{"class":238},[224,292,293,295,299,302],{"class":226,"line":242},[224,294,245],{"class":234},[224,296,298],{"class":297},"sB4Xn"," =",[224,300,301],{"class":234}," value",[224,303,248],{"class":238},[224,305,306,308,310,312],{"class":226,"line":251},[224,307,245],{"class":234},[224,309,298],{"class":297},[224,311,301],{"class":234},[224,313,248],{"class":238},[224,315,316],{"class":226,"line":258},[224,317,261],{"class":238},[224,319,320,322,324],{"class":226,"line":264},[224,321,245],{"class":234},[224,323,298],{"class":297},[224,325,326],{"class":234}," value\n",[224,328,329],{"class":226,"line":270},[224,330,273],{"class":238},[332,333,335],"h3",{"id":334},"example","Example",[213,337,339],{"className":215,"code":338,"language":218,"meta":219,"style":219},"enum Level { Low, Medium, High } \n\nint main(string args[]){\n  \n  Level current_level = Level.Low;\n\n  return 0;\n}\n\n",[221,340,341,368,374,395,400,420,424,436],{"__ignoreMap":219},[224,342,343,345,348,351,354,357,360,362,365],{"class":226,"line":227},[224,344,231],{"class":230},[224,346,347],{"class":234}," Level",[224,349,350],{"class":238}," { ",[224,352,353],{"class":234},"Low",[224,355,356],{"class":238},", ",[224,358,359],{"class":234},"Medium",[224,361,356],{"class":238},[224,363,364],{"class":234},"High",[224,366,367],{"class":238}," } \n",[224,369,370],{"class":226,"line":242},[224,371,373],{"emptyLinePlaceholder":372},true,"\n",[224,375,376,379,383,386,389,392],{"class":226,"line":251},[224,377,378],{"class":234},"int",[224,380,382],{"class":381},"spnjr"," main",[224,384,385],{"class":238},"(",[224,387,388],{"class":230},"string",[224,390,391],{"class":234}," args",[224,393,394],{"class":238},"[]){\n",[224,396,397],{"class":226,"line":258},[224,398,399],{"class":238},"  \n",[224,401,402,405,408,410,412,415,417],{"class":226,"line":264},[224,403,404],{"class":234},"  Level",[224,406,407],{"class":234}," current_level",[224,409,298],{"class":297},[224,411,347],{"class":234},[224,413,414],{"class":238},".",[224,416,353],{"class":234},[224,418,419],{"class":238},";\n",[224,421,422],{"class":226,"line":270},[224,423,373],{"emptyLinePlaceholder":372},[224,425,427,430,434],{"class":226,"line":426},7,[224,428,429],{"class":230},"  return",[224,431,433],{"class":432},"sriKn"," 0",[224,435,419],{"class":238},[224,437,439],{"class":226,"line":438},8,[224,440,273],{"class":238},[442,443,444,450],"note",{},[209,445,446],{},[447,448,449],"strong",{},"Note",[451,452,453,459,462],"ul",{},[454,455,456,457,414],"li",{},"Cambo is strongly typed, so is ",[221,458,231],{},[454,460,461],{},"Although each constant has its own integer value, they cannot be process directly with other integer types.",[454,463,464],{},"Two enum values with the same integer value are not considered equal if they belong to different enum types.",[213,466,468],{"className":215,"code":467,"language":218,"meta":219,"style":219},"enum Level {Low, Medium, High}\nenum Color {Red, Yello, Green}\n\nint main(string args[]){\n  \n  Level current_level = Level.Low;\n  if(current_level == Color.Red){\n    # this won't execute!\n  }\n\n  current_level = Color.Red;  # error!\n  int color_code = Color.Red; # error!\n\n  return 0;\n}\n",[221,469,470,491,515,519,533,537,553,575,581,587,592,612,634,639,648],{"__ignoreMap":219},[224,471,472,474,476,479,481,483,485,487,489],{"class":226,"line":227},[224,473,231],{"class":230},[224,475,347],{"class":234},[224,477,478],{"class":238}," {",[224,480,353],{"class":234},[224,482,356],{"class":238},[224,484,359],{"class":234},[224,486,356],{"class":238},[224,488,364],{"class":234},[224,490,273],{"class":238},[224,492,493,495,498,500,503,505,508,510,513],{"class":226,"line":242},[224,494,231],{"class":230},[224,496,497],{"class":234}," Color",[224,499,478],{"class":238},[224,501,502],{"class":234},"Red",[224,504,356],{"class":238},[224,506,507],{"class":234},"Yello",[224,509,356],{"class":238},[224,511,512],{"class":234},"Green",[224,514,273],{"class":238},[224,516,517],{"class":226,"line":251},[224,518,373],{"emptyLinePlaceholder":372},[224,520,521,523,525,527,529,531],{"class":226,"line":258},[224,522,378],{"class":234},[224,524,382],{"class":381},[224,526,385],{"class":238},[224,528,388],{"class":230},[224,530,391],{"class":234},[224,532,394],{"class":238},[224,534,535],{"class":226,"line":264},[224,536,399],{"class":238},[224,538,539,541,543,545,547,549,551],{"class":226,"line":270},[224,540,404],{"class":234},[224,542,407],{"class":234},[224,544,298],{"class":297},[224,546,347],{"class":234},[224,548,414],{"class":238},[224,550,353],{"class":234},[224,552,419],{"class":238},[224,554,555,558,560,563,566,568,570,572],{"class":226,"line":426},[224,556,557],{"class":230},"  if",[224,559,385],{"class":238},[224,561,562],{"class":234},"current_level",[224,564,565],{"class":297}," ==",[224,567,497],{"class":234},[224,569,414],{"class":238},[224,571,502],{"class":234},[224,573,574],{"class":238},"){\n",[224,576,577],{"class":226,"line":438},[224,578,580],{"class":579},"seacL","    # this won't execute!\n",[224,582,584],{"class":226,"line":583},9,[224,585,586],{"class":238},"  }\n",[224,588,590],{"class":226,"line":589},10,[224,591,373],{"emptyLinePlaceholder":372},[224,593,595,598,600,602,604,606,609],{"class":226,"line":594},11,[224,596,597],{"class":234},"  current_level",[224,599,298],{"class":297},[224,601,497],{"class":234},[224,603,414],{"class":238},[224,605,502],{"class":234},[224,607,608],{"class":238},";  ",[224,610,611],{"class":579},"# error!\n",[224,613,615,618,621,623,625,627,629,632],{"class":226,"line":614},12,[224,616,617],{"class":234},"  int",[224,619,620],{"class":234}," color_code",[224,622,298],{"class":297},[224,624,497],{"class":234},[224,626,414],{"class":238},[224,628,502],{"class":234},[224,630,631],{"class":238},"; ",[224,633,611],{"class":579},[224,635,637],{"class":226,"line":636},13,[224,638,373],{"emptyLinePlaceholder":372},[224,640,642,644,646],{"class":226,"line":641},14,[224,643,429],{"class":230},[224,645,433],{"class":432},[224,647,419],{"class":238},[224,649,651],{"class":226,"line":650},15,[224,652,273],{"class":238},[209,654,655,658,659,662],{},[221,656,657],{},"Level.Low"," and ",[221,660,661],{},"Color.Red"," holds the same integer value, 0. But the condition will never be true because they belong to different enum type, Level and Color.",[204,664,666],{"id":665},"enums-value","Enum's value",[209,668,669],{},"You may have already read the code above, we can not process the constant directly, however we do have a way to access the value of each constant.",[213,671,673],{"className":215,"code":672,"language":218,"meta":219,"style":219},"enum Level {Low, Medium, High}\nenum Color {Red, Yello, Green}\n\nint main(string args[]){\n  \n  int a = Level.Low.value;\n  int b = Color.Red.value;\n\n  if(Level.Low.value == Color.Red.value){\n    # this will execute.\n  }\n\n  return 0;\n}\n",[221,674,675,695,715,719,733,737,759,780,784,815,820,824,828,836],{"__ignoreMap":219},[224,676,677,679,681,683,685,687,689,691,693],{"class":226,"line":227},[224,678,231],{"class":230},[224,680,347],{"class":234},[224,682,478],{"class":238},[224,684,353],{"class":234},[224,686,356],{"class":238},[224,688,359],{"class":234},[224,690,356],{"class":238},[224,692,364],{"class":234},[224,694,273],{"class":238},[224,696,697,699,701,703,705,707,709,711,713],{"class":226,"line":242},[224,698,231],{"class":230},[224,700,497],{"class":234},[224,702,478],{"class":238},[224,704,502],{"class":234},[224,706,356],{"class":238},[224,708,507],{"class":234},[224,710,356],{"class":238},[224,712,512],{"class":234},[224,714,273],{"class":238},[224,716,717],{"class":226,"line":251},[224,718,373],{"emptyLinePlaceholder":372},[224,720,721,723,725,727,729,731],{"class":226,"line":258},[224,722,378],{"class":234},[224,724,382],{"class":381},[224,726,385],{"class":238},[224,728,388],{"class":230},[224,730,391],{"class":234},[224,732,394],{"class":238},[224,734,735],{"class":226,"line":264},[224,736,399],{"class":238},[224,738,739,741,744,746,748,750,752,754,757],{"class":226,"line":270},[224,740,617],{"class":234},[224,742,743],{"class":234}," a",[224,745,298],{"class":297},[224,747,347],{"class":234},[224,749,414],{"class":238},[224,751,353],{"class":234},[224,753,414],{"class":238},[224,755,756],{"class":234},"value",[224,758,419],{"class":238},[224,760,761,763,766,768,770,772,774,776,778],{"class":226,"line":426},[224,762,617],{"class":234},[224,764,765],{"class":234}," b",[224,767,298],{"class":297},[224,769,497],{"class":234},[224,771,414],{"class":238},[224,773,502],{"class":234},[224,775,414],{"class":238},[224,777,756],{"class":234},[224,779,419],{"class":238},[224,781,782],{"class":226,"line":438},[224,783,373],{"emptyLinePlaceholder":372},[224,785,786,788,790,793,795,797,799,801,803,805,807,809,811,813],{"class":226,"line":583},[224,787,557],{"class":230},[224,789,385],{"class":238},[224,791,792],{"class":234},"Level",[224,794,414],{"class":238},[224,796,353],{"class":234},[224,798,414],{"class":238},[224,800,756],{"class":234},[224,802,565],{"class":297},[224,804,497],{"class":234},[224,806,414],{"class":238},[224,808,502],{"class":234},[224,810,414],{"class":238},[224,812,756],{"class":234},[224,814,574],{"class":238},[224,816,817],{"class":226,"line":589},[224,818,819],{"class":579},"    # this will execute.\n",[224,821,822],{"class":226,"line":594},[224,823,586],{"class":238},[224,825,826],{"class":226,"line":614},[224,827,373],{"emptyLinePlaceholder":372},[224,829,830,832,834],{"class":226,"line":636},[224,831,429],{"class":230},[224,833,433],{"class":432},[224,835,419],{"class":238},[224,837,838],{"class":226,"line":641},[224,839,273],{"class":238},[209,841,842],{},"All code above are valid, and can execute without problems!",[844,845,846],"style",{},"html pre.shiki code .sQsOY, html code.shiki .sQsOY{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#A626A4;--shiki-default-font-style:inherit;--shiki-dark:#C678DD;--shiki-dark-font-style:inherit}html pre.shiki code .s8dPH, html code.shiki .s8dPH{--shiki-light:#90A4AE;--shiki-default:#E45649;--shiki-dark:#E06C75}html pre.shiki code .sM89C, html code.shiki .sM89C{--shiki-light:#90A4AE;--shiki-default:#383A42;--shiki-dark:#ABB2BF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sB4Xn, html code.shiki .sB4Xn{--shiki-light:#39ADB5;--shiki-default:#383A42;--shiki-dark:#ABB2BF}html pre.shiki code .spnjr, html code.shiki .spnjr{--shiki-light:#6182B8;--shiki-default:#4078F2;--shiki-dark:#61AFEF}html pre.shiki code .sriKn, html code.shiki .sriKn{--shiki-light:#F76D47;--shiki-default:#986801;--shiki-dark:#D19A66}html pre.shiki code .seacL, html code.shiki .seacL{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#A0A1A7;--shiki-default-font-style:italic;--shiki-dark:#7F848E;--shiki-dark-font-style:italic}",{"title":219,"searchDepth":242,"depth":242,"links":848},[849,852],{"id":206,"depth":242,"text":207,"children":850},[851],{"id":334,"depth":251,"text":335},{"id":665,"depth":242,"text":666},"A user-defined type that improve readability.","md",null,{},{"icon":24},{"title":95,"description":853},"C5GT5p6Oi2AhILYVurgfFOGNj81S70v5APrPScye6N8",[861,863],{"title":91,"path":92,"stem":93,"description":862,"icon":24,"children":-1},"Define alias for anything.",{"title":99,"path":100,"stem":101,"description":864,"icon":24,"children":-1},"Different types live in the same place.",1774971227276]