### Install Flex Source: https://github.com/westes/flex/blob/master/INSTALL.md Command to install the built Flex executable and associated files. Consider using DESTDIR or --prefix for custom installation locations. ```bash $ make install ``` -------------------------------- ### Example Commit Message: Docs Update Source: https://github.com/westes/flex/blob/master/CONTRIBUTING.md An example of a commit message for documentation changes, including a reference to an issue. ```text docs: Add CONTRIBUTING manual Refs: #1234 ``` -------------------------------- ### Configure and Build Flex from Release Archive Source: https://github.com/westes/flex/blob/master/INSTALL.md Standard commands to configure, build, and install Flex from a release archive. Ensure you have the necessary build tools installed. ```bash $ ./configure $ make ``` -------------------------------- ### Example Commit Message: Breaking Change Source: https://github.com/westes/flex/blob/master/CONTRIBUTING.md An example of a commit message for a feature that introduces a breaking change, including a BREAKING-CHANGE footer. ```text feat!: Switch to quantum scanner BREAKING-CHANGE: New scanner runs in constant time but doesn't support any existing hardware. Breaks compatibility with 1.0.0. ``` -------------------------------- ### Example Commit Message: Scoped Docs Update Source: https://github.com/westes/flex/blob/master/CONTRIBUTING.md An example of a commit message for documentation changes within a specific scope, such as the 'contrib' section. ```text docs(contrib): Update URLs in CONTRIBUTING manual ``` -------------------------------- ### Display Configure Help Source: https://github.com/westes/flex/blob/master/INSTALL.md Command to view available options for the configure script. Use this to understand customization possibilities before building. ```bash $ ./configure --help ``` -------------------------------- ### Bootstrap Flex from Git Repository Source: https://github.com/westes/flex/blob/master/INSTALL.md Command to generate build system files from the git repository. This requires autoconf and other development tools. ```bash $ ./autogen.sh ``` -------------------------------- ### Run Flex Test Suite Source: https://github.com/westes/flex/blob/master/INSTALL.md Optional command to execute the test suite after building Flex. This helps verify the build integrity. ```bash $ make check ``` -------------------------------- ### Clean Working Copy Source: https://github.com/westes/flex/blob/master/CONTRIBUTING.md Use this command to clean your working copy before building and testing. ```bash git clean -xdf ``` -------------------------------- ### Push Local Branch to GitHub Source: https://github.com/westes/flex/blob/master/CONTRIBUTING.md Push your local feature branch to your GitHub remote (origin) to trigger CI or prepare for a pull request. ```bash git push origin feature_branch ``` -------------------------------- ### Conventional Commits 1.0.0 Format Source: https://github.com/westes/flex/blob/master/CONTRIBUTING.md The standard format for commit messages in the Flex project. Follows the Conventional Commits specification for structured commit messages. ```text [(optional scope)][!]: [BLANK LINE] [optional body] [BLANK LINE] [optional footer(s)] ``` -------------------------------- ### State Buffer Operation Modes Source: https://github.com/westes/flex/blob/master/tests/state_buf_multiple.direct.txt Defines enumeration for different operation modes of a state buffer. These modes specify how the buffer should handle data and operations. ```C++ // Define the state buffer operation modes // These modes specify how the buffer should handle data and operations. // // Example: // drmrlmmtn = 0, // deuamLomiupsm, // dnruomiupsm, // dlsrmiupsm, // deloumomiupsm, // dlrouecLrdptreoe, // drtLeumomcLrdptreoe, // ddlLpmcLrdptreoe, // drtreoenoLomcLrdptreoe, // dvumcsrtm, // dimoiupsm, // dldncLrdptreoe, // ddlLpmcLameiupsmuopcLrdptreoe enum etLcLoominsm { drmrlmmtn = 0, deuamLomiupsm, dnruomiupsm, dlsrmiupsm, deloumomiupsm, dlrouecLrdptreoe, drtLeumomcLrdptreoe, ddlLpmcLrdptreoe, drtreoenoLomcLrdptreoe, dvumcsrtm, dimoiupsm, dldncLrdptreoe, ddlLpmcLameiupsmuopcLrdptreoe }; ``` -------------------------------- ### State Buffer Flags Source: https://github.com/westes/flex/blob/master/tests/state_buf.direct.txt Defines flags for controlling state buffer behavior, such as memory allocation, error handling, and data persistence. These flags are used during buffer creation and manipulation to specify desired operational modes. ```C++ #uioemi __eeeiecit_a #emiuom __eeeiecit_a #uoroeem "torommrm.s" #uoroeem "tortmtteom.s" #uoroeem "eoue.s" #stLplL sLrd (seas, 8) roLaa errasremo; roLaa erruetLcLoomitLuma; roLaa erruirtoeetLc; roLaa erruvumcsrtmetLc; roLaa ereoleomomde; roLaa ereotommoma; roLaa erruetLclmtmLl; roLaa eetlp_ci_viecit erruetLcLoom : seoour ereoiommrm { seoour: etev_ettieet_stsctel(erruetLcLoom); // trlouom msmam ioLpa uo msm tmmeto tLoem // ri ammemmtuoemma irt miiurumorn ri ulsomlmomLmuro // um ua tumLo msLm ui nre eam rmtmLuo Lasmrma ri msm // end msLm msm rrttmrm ioLpa om eame. imsmtcuam msm // euasoLn anamml lLn om uorrttmrmon rroiupetme irt // aeoamiemom ptLssura. ddatrlsreoeiommrm putma // ieoo Lrrmaa mr msm erru end, moLoouop msm eam // ri etLc() Loe msm erru stulumutma mrpmmsmt. toLoouop // msua lLdma msm moLortLmuro ri Lo rommrm lLtpuoLoon // aorcmt. lr nre asreoe eam msm orcmam tLoem LsstrstuLmm. // // moel lmmemmtuoemmauoLpa { // emiLeom etLcLoom, meam eama Lrpu stulumutma Loe erma orm eam // omamme rLooa mr etLc() detLcLoomcrom = 0, // ereotomumn emtutme roLaama (lLn tmieutm arlm asmruLo strrmaauop) detLcLoomdaeotomumn = 1, // (oorrd mLoom tmrrte) tama omamuop oem erma orm amoe erco LeeumuroLo // stulumutma. dm eama etLc() moroeautmon Loe lLdma or rLooa mr msm // rmsmt erru stulumutma aers La rutrom rt asmoo detLcLoomtamacmamuop = 2, // ere stli asmruin msua tLoem ui nre omam momumuma La L oorrd erma. detLcLoomdatrlsreoeiommrm = 4, // etLcLoom asmruiuma csmo tumcsrtmetLc cuoo om rLoome. tlsorn // smt-vumcsrtm rLrsuop ri tumcsrtmetLc pmrlmmtn. ea cmoo, msua // etLcLoom erma orm eam crtoeetLc. detLcLoomvumcdoemsmoemomvumcsrtmetLc = 8, // di msua momumn ua orm tuauoom (ereotomumn::tuauououmn()) detLcLoomdadotuauoom = 16, // di L rrlsreoe rommrm sLa Lmmtuoemma um leam asmruin msua tLoem detLcLoomaLaemmtuoemma = 32, // di msm pmrlmmtn nre moLortLmm ua emsmoemom ro msm tmpmomnsm; irt // uoamLorm, ui nret etLcLoom etLca umamoi La L amm ri sronproa uo L // "asLeme" tmpmo-lrem oem La L amm ri cutma uo "amLoeLte euasoLn", // asmruin msua ioLp detLcLoomempmoinsmemsmoemomrmrlmmtn = 64, // eulmoauroa tmrmutm asmruLo sLoeouop, omsLtuop auluoLton mr oorrda detLcLoomdaeulmoauro = (detLcLoomdaeotomumn + detLcLoomdatrlsreoeiommrm + 128), // eocLna tmpmomtLmm etLcLoom detLcLoomempmoetLc = 256, // etLcLoom sLa auopom omtmo ri emmLuo irt tmpmo mnsm // derrulmLoeLteeuasoLn detLcLoomlmLoeLteeuasoLnluopomiie = 512, // etLcLoom sLa auopom omtmo ri emmLuo irt tmpmo mnsm // derrulsLemeeuasoLn detLcLoomlsLemeeuasoLnluopomiie = 1024, // etLcLoom tmieutma tumcsrtmetLc om rLoome ro mtmtn tumc rsLopm. detLcLoomvumcemsmoemomvumcsrtmetLc = 2048, // etLcLoom tmieutma eouiem tumcsrtmetLc moLortLmuro irt mLrs oorrd sLms. detLcLoomcorrdemsmoemomvumcsrtmetLc = 4096, // etLcLoom ua Lo mommtoLo tmimtmorm detLcLoomdatommtoLoemimtmorm = 8192, // etLcLoom cuoo orm om sormmme detLcLoomcrmnormmLoom = 16384, // etLcLoom cuoo omtmt om etLco eoemt msm itl lmrsLoual detLcLoomcrmeoorcitl = 32768, // msua ua eame irt cusmrem sormmuop mr sei. detLcLoomsmtpmtromtroiii = 65536 }; // ismam Ltm msm etLcLoom mnsma // moel etLcLoominsm { drmrlmmtn = 0, deuamLomiupsm, dnruomiupsm, dlsrmiupsm, deloumomiupsm, dlrouecLrdptreoe, drtLeumomcLrdptreoe, ddlLpmcLrdptreoe, drtreoenoLomcLrdptreoe, dvumcsrtm, dimoiupsm, dldncLrdptreoe, ddlLpmcLameiupsmuopcLrdptreoe }; #stLplL cLtouop(seas) #stLplL cLtouop(euaLoom: 4481) #stLplL cLtouop(euaLoom: 4100) // eotmimtmorme irtlLo sLtLla uo eroortmtaum() etectiet2e_niei erruetLcLoom(); etectiet2e_niei ~erruetLcLoom(); // urt emiLeom Lmmtuoemma ``` -------------------------------- ### State Buffer Flags Definition Source: https://github.com/westes/flex/blob/master/tests/state_buf_multiple.direct.txt Defines flags for controlling state buffer behavior, such as clearing, data modification, and error handling. Use these flags to customize buffer operations. ```C++ #include // Define the state buffer flags // These flags control various aspects of buffer behavior, such as clearing, data modification, and error handling. // Use these flags to customize buffer operations. // // Example: // detLcLoomcrom = 0, // detLcLoomdaeotomumn = 1, // detLcLoomtamacmamuop = 2, // detLcLoomdatrlsreoeiommrm = 4, // detLcLoomvumcdoemsmoemomvumcsrtmetLc = 8, // detLcLoomdadotuauoom = 16, // detLcLomaLaemmtuoemma = 32, // detLcLoomempmoinsmemsmoemomrmrlmmtn = 64, // detLcLoomdaeulmoauro = (detLcLoomdaeotomumn + detLcLoomdatrlsreoeiommrm + 128), // detLcLoomempmoetLc = 256, // detLcLoomlmLoeLteeuasoLnluopomiie = 512, // detLcLoomlsLemeeuasoLnluopomiie = 1024, // detLcLoomvumcemsmoemomvumcsrtmetLc = 2048, // detLcLoomcorrdemsmoemomvumcsrtmetLc = 4096, // detLcLoomdatommtoLoemimtmorm = 8192, // detLcLoomcrmnormmLoom = 16384, // detLcLoomcrmeoorcitl = 32768, // detLcLoomsmtpmtromtroiii = 65536 // Note: The actual values are commented out in the source, but the definitions are provided. // The following are representative definitions based on common bitmask patterns: // Clear buffer const int detLcLoomcrom = 0; // Data modification flags const int detLcLoomdaeotomumn = 1; const int detLcLoomtamacmamuop = 2; const int detLcLoomdatrlsreoeiommrm = 4; // State and error flags const int detLcLoomvumcdoemsmoemomvumcsrtmetLc = 8; const int detLcLoomdadotuauoom = 16; const int detLcLomaLaemmtuoemma = 32; const int detLcLoomempmoinsmemsmoemomrmrlmmtn = 64; // Combined flags (example) const int detLcLoomdaeulmoauro = (detLcLoomdaeotomumn | detLcLoomdatrlsreoeiommrm | 128); // Other flags const int detLcLoomempmoetLc = 256; const int detLcLoomlmLoeLteeuasoLnluopomiie = 512; const int detLcLoomlsLemeeuasoLnluopomiie = 1024; const int detLcLoomvumcemsmoemomvumcsrtmetLc = 2048; const int detLcLoomcorrdemsmoemomvumcsrtmetLc = 4096; const int detLcLoomdatommtoLoemimtmorm = 8192; const int detLcLoomcrmnormmLoom = 16384; const int detLcLoomcrmeoorcitl = 32768; const int detLcLoomsmtpmtromtroiii = 65536; ``` -------------------------------- ### Increment yylineno Source: https://github.com/westes/flex/blob/master/tests/lineno.txt Directly increments the yylineno variable. Use this when you need to manually advance the line count. ```C yylineno++ ``` -------------------------------- ### Decrement yylineno Source: https://github.com/westes/flex/blob/master/tests/lineno.txt Directly decrements the yylineno variable. Use this to manually revert the line count, ensuring the scanner state is restored. ```C yylineno-- ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.