| 1 | use std::env; |
| 2 | use std::fs::File; |
| 3 | use std::io::{BufWriter, Write}; |
| 4 | use std::path::Path; |
| 5 | |
| 6 | fn main() { |
| 7 | let path = Path::new(&env::var("OUT_DIR").unwrap()).join("tokens.rs"); |
| 8 | let mut file = BufWriter::new(File::create(&path).unwrap()); |
| 9 | |
| 10 | writeln!( |
| 11 | &mut file, |
| 12 | "static COMMAND_MAP: phf::Map<&'static [u8], Token> = {};", |
| 13 | phf_codegen::Map::<&[u8]>::new() |
| 14 | .entry(b"CHART", "Token::Chart") |
| 15 | .entry(b"CHART_DEFINITION_END", "Token::ChartDefinitionEnd") |
| 16 | .entry(b"DIMENSION", "Token::Dimension") |
| 17 | .entry(b"BEGIN", "Token::Begin") |
| 18 | .entry(b"END", "Token::End") |
| 19 | .entry(b"SET", "Token::Set") |
| 20 | .entry(b"FLUSH", "Token::Flush") |
| 21 | .entry(b"DISABLE", "Token::Disable") |
| 22 | .entry(b"VARIABLE", "Token::Variable") |
| 23 | .entry(b"LABEL", "Token::Label") |
| 24 | .entry(b"OVERWRITE", "Token::Overwrite") |
| 25 | .entry(b"CLABEL", "Token::Clabel") |
| 26 | .entry(b"CLABEL_COMMIT", "Token::ClabelCommit") |
| 27 | .entry(b"EXIT", "Token::Exit") |
| 28 | .entry(b"BEGIN2", "Token::Begin2") |
| 29 | .entry(b"SET2", "Token::Set2") |
| 30 | .entry(b"END2", "Token::End2") |
| 31 | .entry(b"HOST_DEFINE", "Token::HostDefine") |
| 32 | .entry(b"HOST_DEFINE_END", "Token::HostDefineEnd") |
| 33 | .entry(b"HOST_LABEL", "Token::HostLabel") |
| 34 | .entry(b"HOST", "Token::Host") |
| 35 | .entry(b"REPLAY_CHART", "Token::ReplayChart") |
| 36 | .entry(b"RBEGIN", "Token::Rbegin") |
| 37 | .entry(b"RSET", "Token::Rset") |
| 38 | .entry(b"RDSTATE", "Token::RdState") |
| 39 | .entry(b"RSSTATE", "Token::RsState") |
| 40 | .entry(b"REND", "Token::Rend") |
| 41 | .entry(b"FUNCTION", "Token::Function") |
| 42 | .entry(b"FUNCTION_RESULT_BEGIN", "Token::FunctionResultBegin") |
| 43 | .entry(b"FUNCTION_RESULT_END", "Token::FunctionResultEnd") |
| 44 | .entry(b"FUNCTION_PAYLOAD", "Token::FunctionPayloadBegin") |
| 45 | .entry(b"FUNCTION_PAYLOAD_END", "Token::FunctionPayloadEnd") |
| 46 | .entry(b"FUNCTION_CANCEL", "Token::FunctionCancel") |
| 47 | .entry(b"FUNCTION_PROGRESS", "Token::FunctionProgress") |
| 48 | .entry(b"QUIT", "Token::Quit") |
| 49 | .entry(b"CONFIG", "Token::Config") |
| 50 | .entry(b"NODE_ID", "Token::NodeId") |
| 51 | .entry(b"CLAIMED_ID", "Token::ClaimedId") |
| 52 | .entry(b"JSON", "Token::Json") |
| 53 | .entry(b"JSON_PAYLOAD_END", "Token::JsonPayloadEnd") |
| 54 | .entry(b"STREAM_PATH", "Token::StreamPath") |
| 55 | .entry(b"ML_MODEL", "Token::MlModel") |
| 56 | .entry(b"TRUST_DURATIONS", "Token::TrustDurations") |
| 57 | .entry(b"DYNCFG_ENABLE", "Token::DynCfg") |
| 58 | .entry(b"DYNCFG_REGISTER_MODULE", "Token::DynCfgRegisterModule") |
| 59 | .entry(b"DYNCFG_REGISTER_JOB", "Token::DynCfgRegisterJob") |
| 60 | .entry(b"DYNCFG_RESET", "Token::DynCfgReset") |
| 61 | .entry(b"REPORT_JOB_STATUS", "Token::ReportJobStatus") |
| 62 | .entry(b"DELETE_JOB", "Token::DeleteJob") |
| 63 | .build() |
| 64 | ) |
| 65 | .unwrap(); |
| 66 | } |