provenant/license_detection/models/
license.rs1use rkyv::Archive;
4use serde::{Deserialize, Serialize};
5
6#[derive(
8 Debug,
9 Clone,
10 PartialEq,
11 Default,
12 Serialize,
13 Deserialize,
14 Archive,
15 rkyv::Serialize,
16 rkyv::Deserialize,
17)]
18pub struct License {
19 pub key: String,
20 pub short_name: Option<String>,
21 pub name: String,
22 pub language: Option<String>,
23 pub spdx_license_key: Option<String>,
24 pub other_spdx_license_keys: Vec<String>,
25 pub category: Option<String>,
26 pub owner: Option<String>,
27 pub homepage_url: Option<String>,
28 pub text: String,
29 pub reference_urls: Vec<String>,
30 pub osi_license_key: Option<String>,
31 pub text_urls: Vec<String>,
32 pub osi_url: Option<String>,
33 pub faq_url: Option<String>,
34 pub other_urls: Vec<String>,
35 pub notes: Option<String>,
36 pub is_deprecated: bool,
37 pub is_exception: bool,
38 pub is_unknown: bool,
39 pub is_generic: bool,
40 pub replaced_by: Vec<String>,
41 pub minimum_coverage: Option<u8>,
42 pub standard_notice: Option<String>,
43 pub ignorable_copyrights: Option<Vec<String>>,
44 pub ignorable_holders: Option<Vec<String>>,
45 pub ignorable_authors: Option<Vec<String>>,
46 pub ignorable_urls: Option<Vec<String>>,
47 pub ignorable_emails: Option<Vec<String>>,
48}