// Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 use askalono::{Store, TextData}; use std::path::Path; // Note: this example is stupid slow because it loads and parses licenses // each run instead of persisting to a cache file. Expect runs to take ~20s; // 19.99s of that to be loading license data. fn main() { // create a new license text store let mut store = Store::new(); // load up data from SPDX JSON files, opting to not embed full text println!("Loading SPDX data, this may take a while..."); store .load_spdx( Path::new(concat!( env!("CARGO_MANIFEST_DIR"), "/datasets/modules/spdx-license-list-data/json/details" )), false, ) .unwrap(); // load input text println!("Parsing input text"); let input: TextData = include_str!("../LICENSE").into(); // do the heavy lifting println!("Scoring licenses"); let matched = store.analyze(&input); println!("{:?}", matched); }