l5x 0.6.0

Parser for Rockwell Automation L5X files (Studio 5000 Logix Designer)
Documentation
// Auto-generated L5X types - core category
// DO NOT EDIT - Generated by build script

use serde::{Serialize, Deserialize};
use super::*;

/// ProjectType element
#[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)]
#[serde(rename = "RSLogix5000Content")]
pub struct Project {
    /// SchemaRevision attribute
    #[serde(rename = "@SchemaRevision", default)]
    pub schema_revision: String,
    /// SoftwareRevision attribute
    #[serde(rename = "@SoftwareRevision", default)]
    pub software_revision: String,
    /// ArchitectureID attribute
    #[serde(rename = "@ArchitectureID", default, skip_serializing_if = "Option::is_none")]
    pub architecture_id: Option<String>,
    /// TargetName attribute
    #[serde(rename = "@TargetName", default, skip_serializing_if = "Option::is_none")]
    pub target_name: Option<String>,
    /// TargetType attribute
    #[serde(rename = "@TargetType", default, skip_serializing_if = "Option::is_none")]
    pub target_type: Option<String>,
    /// TargetSubType attribute
    #[serde(rename = "@TargetSubType", default, skip_serializing_if = "Option::is_none")]
    pub target_sub_type: Option<String>,
    /// TargetClass attribute
    #[serde(rename = "@TargetClass", default, skip_serializing_if = "Option::is_none")]
    pub target_class: Option<String>,
    /// TargetCount attribute
    #[serde(rename = "@TargetCount", default, skip_serializing_if = "Option::is_none")]
    pub target_count: Option<String>,
    /// TargetRevision attribute
    #[serde(rename = "@TargetRevision", default, skip_serializing_if = "Option::is_none")]
    pub target_revision: Option<String>,
    /// TargetLastEdited attribute
    #[serde(rename = "@TargetLastEdited", default, skip_serializing_if = "Option::is_none")]
    pub target_last_edited: Option<String>,
    /// TargetSignature attribute
    #[serde(rename = "@TargetSignature", default, skip_serializing_if = "Option::is_none")]
    pub target_signature: Option<String>,
    /// TargetIsEncrypted attribute
    #[serde(rename = "@TargetIsEncrypted", default, skip_serializing_if = "Option::is_none")]
    pub target_is_encrypted: Option<String>,
    /// CurrentLanguage attribute
    #[serde(rename = "@CurrentLanguage", default, skip_serializing_if = "Option::is_none")]
    pub current_language: Option<String>,
    /// ContainsContext attribute
    #[serde(rename = "@ContainsContext", default, skip_serializing_if = "Option::is_none")]
    pub contains_context: Option<String>,
    /// Owner attribute
    #[serde(rename = "@Owner", default, skip_serializing_if = "Option::is_none")]
    pub owner: Option<String>,
    /// ExportDate attribute
    #[serde(rename = "@ExportDate", default, skip_serializing_if = "Option::is_none")]
    pub export_date: Option<String>,
    /// ExportOptions attribute
    #[serde(rename = "@ExportOptions", default, skip_serializing_if = "Option::is_none")]
    pub export_options: Option<String>,
    /// ForceMemorySaving attribute
    #[serde(rename = "@ForceMemorySaving", default, skip_serializing_if = "Option::is_none")]
    pub force_memory_saving: Option<String>,
    /// Use attribute
    #[serde(rename = "@Use", default, skip_serializing_if = "Option::is_none")]
    pub r#use: Option<String>,
    /// CustomProperties element
    #[serde(rename = "CustomProperties", default, skip_serializing_if = "Option::is_none")]
    pub custom_properties: Option<CustomPropertiesCollection>,
    /// Controller element
    #[serde(rename = "Controller", default)]
    pub controller: Option<Controller>,
}