/*
FinFeedAPI SEC REST API

No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)

API version: v1
Contact: support@apibricks.io
*/

// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.

package openapi

import (
	"encoding/json"
	"time"
)

// checks if the DTOFilingMetadataDto type satisfies the MappedNullable interface at compile time
var _ MappedNullable = &DTOFilingMetadataDto{}

// DTOFilingMetadataDto Represents the response for a single SEC filing metadata record. Maps fields from the edgar_submissions table.
type DTOFilingMetadataDto struct {
	Cik *int64 `json:"cik,omitempty"`
	AccessionNumber NullableString `json:"accession_number,omitempty"`
	FilingDate *string `json:"filing_date,omitempty"`
	ReportDate NullableString `json:"report_date,omitempty"`
	AcceptanceDateTime NullableTime `json:"acceptance_date_time,omitempty"`
	Act NullableString `json:"act,omitempty"`
	Form NullableString `json:"form,omitempty"`
	FileNumber NullableString `json:"file_number,omitempty"`
	FilmNumber NullableString `json:"film_number,omitempty"`
	Items NullableString `json:"items,omitempty"`
	CoreType NullableString `json:"core_type,omitempty"`
	Size NullableInt32 `json:"size,omitempty"`
	IsXbrl NullableBool `json:"is_xbrl,omitempty"`
	IsInlineXbrl NullableBool `json:"is_inline_xbrl,omitempty"`
	PrimaryDocument NullableString `json:"primary_document,omitempty"`
	PrimaryDocDescription NullableString `json:"primary_doc_description,omitempty"`
	SourceFile NullableString `json:"source_file,omitempty"`
}

// NewDTOFilingMetadataDto instantiates a new DTOFilingMetadataDto object
// This constructor will assign default values to properties that have it defined,
// and makes sure properties required by API are set, but the set of arguments
// will change when the set of required properties is changed
func NewDTOFilingMetadataDto() *DTOFilingMetadataDto {
	this := DTOFilingMetadataDto{}
	return &this
}

// NewDTOFilingMetadataDtoWithDefaults instantiates a new DTOFilingMetadataDto object
// This constructor will only assign default values to properties that have it defined,
// but it doesn't guarantee that properties required by API are set
func NewDTOFilingMetadataDtoWithDefaults() *DTOFilingMetadataDto {
	this := DTOFilingMetadataDto{}
	return &this
}

// GetCik returns the Cik field value if set, zero value otherwise.
func (o *DTOFilingMetadataDto) GetCik() int64 {
	if o == nil || IsNil(o.Cik) {
		var ret int64
		return ret
	}
	return *o.Cik
}

// GetCikOk returns a tuple with the Cik field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *DTOFilingMetadataDto) GetCikOk() (*int64, bool) {
	if o == nil || IsNil(o.Cik) {
		return nil, false
	}
	return o.Cik, true
}

// HasCik returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasCik() bool {
	if o != nil && !IsNil(o.Cik) {
		return true
	}

	return false
}

// SetCik gets a reference to the given int64 and assigns it to the Cik field.
func (o *DTOFilingMetadataDto) SetCik(v int64) {
	o.Cik = &v
}

// GetAccessionNumber returns the AccessionNumber field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetAccessionNumber() string {
	if o == nil || IsNil(o.AccessionNumber.Get()) {
		var ret string
		return ret
	}
	return *o.AccessionNumber.Get()
}

// GetAccessionNumberOk returns a tuple with the AccessionNumber field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetAccessionNumberOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.AccessionNumber.Get(), o.AccessionNumber.IsSet()
}

// HasAccessionNumber returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasAccessionNumber() bool {
	if o != nil && o.AccessionNumber.IsSet() {
		return true
	}

	return false
}

// SetAccessionNumber gets a reference to the given NullableString and assigns it to the AccessionNumber field.
func (o *DTOFilingMetadataDto) SetAccessionNumber(v string) {
	o.AccessionNumber.Set(&v)
}
// SetAccessionNumberNil sets the value for AccessionNumber to be an explicit nil
func (o *DTOFilingMetadataDto) SetAccessionNumberNil() {
	o.AccessionNumber.Set(nil)
}

// UnsetAccessionNumber ensures that no value is present for AccessionNumber, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetAccessionNumber() {
	o.AccessionNumber.Unset()
}

// GetFilingDate returns the FilingDate field value if set, zero value otherwise.
func (o *DTOFilingMetadataDto) GetFilingDate() string {
	if o == nil || IsNil(o.FilingDate) {
		var ret string
		return ret
	}
	return *o.FilingDate
}

// GetFilingDateOk returns a tuple with the FilingDate field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *DTOFilingMetadataDto) GetFilingDateOk() (*string, bool) {
	if o == nil || IsNil(o.FilingDate) {
		return nil, false
	}
	return o.FilingDate, true
}

// HasFilingDate returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasFilingDate() bool {
	if o != nil && !IsNil(o.FilingDate) {
		return true
	}

	return false
}

// SetFilingDate gets a reference to the given string and assigns it to the FilingDate field.
func (o *DTOFilingMetadataDto) SetFilingDate(v string) {
	o.FilingDate = &v
}

// GetReportDate returns the ReportDate field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetReportDate() string {
	if o == nil || IsNil(o.ReportDate.Get()) {
		var ret string
		return ret
	}
	return *o.ReportDate.Get()
}

// GetReportDateOk returns a tuple with the ReportDate field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetReportDateOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.ReportDate.Get(), o.ReportDate.IsSet()
}

// HasReportDate returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasReportDate() bool {
	if o != nil && o.ReportDate.IsSet() {
		return true
	}

	return false
}

// SetReportDate gets a reference to the given NullableString and assigns it to the ReportDate field.
func (o *DTOFilingMetadataDto) SetReportDate(v string) {
	o.ReportDate.Set(&v)
}
// SetReportDateNil sets the value for ReportDate to be an explicit nil
func (o *DTOFilingMetadataDto) SetReportDateNil() {
	o.ReportDate.Set(nil)
}

// UnsetReportDate ensures that no value is present for ReportDate, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetReportDate() {
	o.ReportDate.Unset()
}

// GetAcceptanceDateTime returns the AcceptanceDateTime field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetAcceptanceDateTime() time.Time {
	if o == nil || IsNil(o.AcceptanceDateTime.Get()) {
		var ret time.Time
		return ret
	}
	return *o.AcceptanceDateTime.Get()
}

// GetAcceptanceDateTimeOk returns a tuple with the AcceptanceDateTime field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetAcceptanceDateTimeOk() (*time.Time, bool) {
	if o == nil {
		return nil, false
	}
	return o.AcceptanceDateTime.Get(), o.AcceptanceDateTime.IsSet()
}

// HasAcceptanceDateTime returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasAcceptanceDateTime() bool {
	if o != nil && o.AcceptanceDateTime.IsSet() {
		return true
	}

	return false
}

// SetAcceptanceDateTime gets a reference to the given NullableTime and assigns it to the AcceptanceDateTime field.
func (o *DTOFilingMetadataDto) SetAcceptanceDateTime(v time.Time) {
	o.AcceptanceDateTime.Set(&v)
}
// SetAcceptanceDateTimeNil sets the value for AcceptanceDateTime to be an explicit nil
func (o *DTOFilingMetadataDto) SetAcceptanceDateTimeNil() {
	o.AcceptanceDateTime.Set(nil)
}

// UnsetAcceptanceDateTime ensures that no value is present for AcceptanceDateTime, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetAcceptanceDateTime() {
	o.AcceptanceDateTime.Unset()
}

// GetAct returns the Act field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetAct() string {
	if o == nil || IsNil(o.Act.Get()) {
		var ret string
		return ret
	}
	return *o.Act.Get()
}

// GetActOk returns a tuple with the Act field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetActOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.Act.Get(), o.Act.IsSet()
}

// HasAct returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasAct() bool {
	if o != nil && o.Act.IsSet() {
		return true
	}

	return false
}

// SetAct gets a reference to the given NullableString and assigns it to the Act field.
func (o *DTOFilingMetadataDto) SetAct(v string) {
	o.Act.Set(&v)
}
// SetActNil sets the value for Act to be an explicit nil
func (o *DTOFilingMetadataDto) SetActNil() {
	o.Act.Set(nil)
}

// UnsetAct ensures that no value is present for Act, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetAct() {
	o.Act.Unset()
}

// GetForm returns the Form field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetForm() string {
	if o == nil || IsNil(o.Form.Get()) {
		var ret string
		return ret
	}
	return *o.Form.Get()
}

// GetFormOk returns a tuple with the Form field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetFormOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.Form.Get(), o.Form.IsSet()
}

// HasForm returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasForm() bool {
	if o != nil && o.Form.IsSet() {
		return true
	}

	return false
}

// SetForm gets a reference to the given NullableString and assigns it to the Form field.
func (o *DTOFilingMetadataDto) SetForm(v string) {
	o.Form.Set(&v)
}
// SetFormNil sets the value for Form to be an explicit nil
func (o *DTOFilingMetadataDto) SetFormNil() {
	o.Form.Set(nil)
}

// UnsetForm ensures that no value is present for Form, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetForm() {
	o.Form.Unset()
}

// GetFileNumber returns the FileNumber field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetFileNumber() string {
	if o == nil || IsNil(o.FileNumber.Get()) {
		var ret string
		return ret
	}
	return *o.FileNumber.Get()
}

// GetFileNumberOk returns a tuple with the FileNumber field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetFileNumberOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.FileNumber.Get(), o.FileNumber.IsSet()
}

// HasFileNumber returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasFileNumber() bool {
	if o != nil && o.FileNumber.IsSet() {
		return true
	}

	return false
}

// SetFileNumber gets a reference to the given NullableString and assigns it to the FileNumber field.
func (o *DTOFilingMetadataDto) SetFileNumber(v string) {
	o.FileNumber.Set(&v)
}
// SetFileNumberNil sets the value for FileNumber to be an explicit nil
func (o *DTOFilingMetadataDto) SetFileNumberNil() {
	o.FileNumber.Set(nil)
}

// UnsetFileNumber ensures that no value is present for FileNumber, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetFileNumber() {
	o.FileNumber.Unset()
}

// GetFilmNumber returns the FilmNumber field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetFilmNumber() string {
	if o == nil || IsNil(o.FilmNumber.Get()) {
		var ret string
		return ret
	}
	return *o.FilmNumber.Get()
}

// GetFilmNumberOk returns a tuple with the FilmNumber field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetFilmNumberOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.FilmNumber.Get(), o.FilmNumber.IsSet()
}

// HasFilmNumber returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasFilmNumber() bool {
	if o != nil && o.FilmNumber.IsSet() {
		return true
	}

	return false
}

// SetFilmNumber gets a reference to the given NullableString and assigns it to the FilmNumber field.
func (o *DTOFilingMetadataDto) SetFilmNumber(v string) {
	o.FilmNumber.Set(&v)
}
// SetFilmNumberNil sets the value for FilmNumber to be an explicit nil
func (o *DTOFilingMetadataDto) SetFilmNumberNil() {
	o.FilmNumber.Set(nil)
}

// UnsetFilmNumber ensures that no value is present for FilmNumber, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetFilmNumber() {
	o.FilmNumber.Unset()
}

// GetItems returns the Items field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetItems() string {
	if o == nil || IsNil(o.Items.Get()) {
		var ret string
		return ret
	}
	return *o.Items.Get()
}

// GetItemsOk returns a tuple with the Items field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetItemsOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.Items.Get(), o.Items.IsSet()
}

// HasItems returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasItems() bool {
	if o != nil && o.Items.IsSet() {
		return true
	}

	return false
}

// SetItems gets a reference to the given NullableString and assigns it to the Items field.
func (o *DTOFilingMetadataDto) SetItems(v string) {
	o.Items.Set(&v)
}
// SetItemsNil sets the value for Items to be an explicit nil
func (o *DTOFilingMetadataDto) SetItemsNil() {
	o.Items.Set(nil)
}

// UnsetItems ensures that no value is present for Items, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetItems() {
	o.Items.Unset()
}

// GetCoreType returns the CoreType field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetCoreType() string {
	if o == nil || IsNil(o.CoreType.Get()) {
		var ret string
		return ret
	}
	return *o.CoreType.Get()
}

// GetCoreTypeOk returns a tuple with the CoreType field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetCoreTypeOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.CoreType.Get(), o.CoreType.IsSet()
}

// HasCoreType returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasCoreType() bool {
	if o != nil && o.CoreType.IsSet() {
		return true
	}

	return false
}

// SetCoreType gets a reference to the given NullableString and assigns it to the CoreType field.
func (o *DTOFilingMetadataDto) SetCoreType(v string) {
	o.CoreType.Set(&v)
}
// SetCoreTypeNil sets the value for CoreType to be an explicit nil
func (o *DTOFilingMetadataDto) SetCoreTypeNil() {
	o.CoreType.Set(nil)
}

// UnsetCoreType ensures that no value is present for CoreType, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetCoreType() {
	o.CoreType.Unset()
}

// GetSize returns the Size field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetSize() int32 {
	if o == nil || IsNil(o.Size.Get()) {
		var ret int32
		return ret
	}
	return *o.Size.Get()
}

// GetSizeOk returns a tuple with the Size field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetSizeOk() (*int32, bool) {
	if o == nil {
		return nil, false
	}
	return o.Size.Get(), o.Size.IsSet()
}

// HasSize returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasSize() bool {
	if o != nil && o.Size.IsSet() {
		return true
	}

	return false
}

// SetSize gets a reference to the given NullableInt32 and assigns it to the Size field.
func (o *DTOFilingMetadataDto) SetSize(v int32) {
	o.Size.Set(&v)
}
// SetSizeNil sets the value for Size to be an explicit nil
func (o *DTOFilingMetadataDto) SetSizeNil() {
	o.Size.Set(nil)
}

// UnsetSize ensures that no value is present for Size, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetSize() {
	o.Size.Unset()
}

// GetIsXbrl returns the IsXbrl field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetIsXbrl() bool {
	if o == nil || IsNil(o.IsXbrl.Get()) {
		var ret bool
		return ret
	}
	return *o.IsXbrl.Get()
}

// GetIsXbrlOk returns a tuple with the IsXbrl field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetIsXbrlOk() (*bool, bool) {
	if o == nil {
		return nil, false
	}
	return o.IsXbrl.Get(), o.IsXbrl.IsSet()
}

// HasIsXbrl returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasIsXbrl() bool {
	if o != nil && o.IsXbrl.IsSet() {
		return true
	}

	return false
}

// SetIsXbrl gets a reference to the given NullableBool and assigns it to the IsXbrl field.
func (o *DTOFilingMetadataDto) SetIsXbrl(v bool) {
	o.IsXbrl.Set(&v)
}
// SetIsXbrlNil sets the value for IsXbrl to be an explicit nil
func (o *DTOFilingMetadataDto) SetIsXbrlNil() {
	o.IsXbrl.Set(nil)
}

// UnsetIsXbrl ensures that no value is present for IsXbrl, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetIsXbrl() {
	o.IsXbrl.Unset()
}

// GetIsInlineXbrl returns the IsInlineXbrl field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetIsInlineXbrl() bool {
	if o == nil || IsNil(o.IsInlineXbrl.Get()) {
		var ret bool
		return ret
	}
	return *o.IsInlineXbrl.Get()
}

// GetIsInlineXbrlOk returns a tuple with the IsInlineXbrl field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetIsInlineXbrlOk() (*bool, bool) {
	if o == nil {
		return nil, false
	}
	return o.IsInlineXbrl.Get(), o.IsInlineXbrl.IsSet()
}

// HasIsInlineXbrl returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasIsInlineXbrl() bool {
	if o != nil && o.IsInlineXbrl.IsSet() {
		return true
	}

	return false
}

// SetIsInlineXbrl gets a reference to the given NullableBool and assigns it to the IsInlineXbrl field.
func (o *DTOFilingMetadataDto) SetIsInlineXbrl(v bool) {
	o.IsInlineXbrl.Set(&v)
}
// SetIsInlineXbrlNil sets the value for IsInlineXbrl to be an explicit nil
func (o *DTOFilingMetadataDto) SetIsInlineXbrlNil() {
	o.IsInlineXbrl.Set(nil)
}

// UnsetIsInlineXbrl ensures that no value is present for IsInlineXbrl, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetIsInlineXbrl() {
	o.IsInlineXbrl.Unset()
}

// GetPrimaryDocument returns the PrimaryDocument field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetPrimaryDocument() string {
	if o == nil || IsNil(o.PrimaryDocument.Get()) {
		var ret string
		return ret
	}
	return *o.PrimaryDocument.Get()
}

// GetPrimaryDocumentOk returns a tuple with the PrimaryDocument field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetPrimaryDocumentOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.PrimaryDocument.Get(), o.PrimaryDocument.IsSet()
}

// HasPrimaryDocument returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasPrimaryDocument() bool {
	if o != nil && o.PrimaryDocument.IsSet() {
		return true
	}

	return false
}

// SetPrimaryDocument gets a reference to the given NullableString and assigns it to the PrimaryDocument field.
func (o *DTOFilingMetadataDto) SetPrimaryDocument(v string) {
	o.PrimaryDocument.Set(&v)
}
// SetPrimaryDocumentNil sets the value for PrimaryDocument to be an explicit nil
func (o *DTOFilingMetadataDto) SetPrimaryDocumentNil() {
	o.PrimaryDocument.Set(nil)
}

// UnsetPrimaryDocument ensures that no value is present for PrimaryDocument, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetPrimaryDocument() {
	o.PrimaryDocument.Unset()
}

// GetPrimaryDocDescription returns the PrimaryDocDescription field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetPrimaryDocDescription() string {
	if o == nil || IsNil(o.PrimaryDocDescription.Get()) {
		var ret string
		return ret
	}
	return *o.PrimaryDocDescription.Get()
}

// GetPrimaryDocDescriptionOk returns a tuple with the PrimaryDocDescription field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetPrimaryDocDescriptionOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.PrimaryDocDescription.Get(), o.PrimaryDocDescription.IsSet()
}

// HasPrimaryDocDescription returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasPrimaryDocDescription() bool {
	if o != nil && o.PrimaryDocDescription.IsSet() {
		return true
	}

	return false
}

// SetPrimaryDocDescription gets a reference to the given NullableString and assigns it to the PrimaryDocDescription field.
func (o *DTOFilingMetadataDto) SetPrimaryDocDescription(v string) {
	o.PrimaryDocDescription.Set(&v)
}
// SetPrimaryDocDescriptionNil sets the value for PrimaryDocDescription to be an explicit nil
func (o *DTOFilingMetadataDto) SetPrimaryDocDescriptionNil() {
	o.PrimaryDocDescription.Set(nil)
}

// UnsetPrimaryDocDescription ensures that no value is present for PrimaryDocDescription, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetPrimaryDocDescription() {
	o.PrimaryDocDescription.Unset()
}

// GetSourceFile returns the SourceFile field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *DTOFilingMetadataDto) GetSourceFile() string {
	if o == nil || IsNil(o.SourceFile.Get()) {
		var ret string
		return ret
	}
	return *o.SourceFile.Get()
}

// GetSourceFileOk returns a tuple with the SourceFile field value if set, nil otherwise
// and a boolean to check if the value has been set.
// NOTE: If the value is an explicit nil, `nil, true` will be returned
func (o *DTOFilingMetadataDto) GetSourceFileOk() (*string, bool) {
	if o == nil {
		return nil, false
	}
	return o.SourceFile.Get(), o.SourceFile.IsSet()
}

// HasSourceFile returns a boolean if a field has been set.
func (o *DTOFilingMetadataDto) HasSourceFile() bool {
	if o != nil && o.SourceFile.IsSet() {
		return true
	}

	return false
}

// SetSourceFile gets a reference to the given NullableString and assigns it to the SourceFile field.
func (o *DTOFilingMetadataDto) SetSourceFile(v string) {
	o.SourceFile.Set(&v)
}
// SetSourceFileNil sets the value for SourceFile to be an explicit nil
func (o *DTOFilingMetadataDto) SetSourceFileNil() {
	o.SourceFile.Set(nil)
}

// UnsetSourceFile ensures that no value is present for SourceFile, not even an explicit nil
func (o *DTOFilingMetadataDto) UnsetSourceFile() {
	o.SourceFile.Unset()
}

func (o DTOFilingMetadataDto) MarshalJSON() ([]byte, error) {
	toSerialize,err := o.ToMap()
	if err != nil {
		return []byte{}, err
	}
	return json.Marshal(toSerialize)
}

func (o DTOFilingMetadataDto) ToMap() (map[string]interface{}, error) {
	toSerialize := map[string]interface{}{}
	if !IsNil(o.Cik) {
		toSerialize["cik"] = o.Cik
	}
	if o.AccessionNumber.IsSet() {
		toSerialize["accession_number"] = o.AccessionNumber.Get()
	}
	if !IsNil(o.FilingDate) {
		toSerialize["filing_date"] = o.FilingDate
	}
	if o.ReportDate.IsSet() {
		toSerialize["report_date"] = o.ReportDate.Get()
	}
	if o.AcceptanceDateTime.IsSet() {
		toSerialize["acceptance_date_time"] = o.AcceptanceDateTime.Get()
	}
	if o.Act.IsSet() {
		toSerialize["act"] = o.Act.Get()
	}
	if o.Form.IsSet() {
		toSerialize["form"] = o.Form.Get()
	}
	if o.FileNumber.IsSet() {
		toSerialize["file_number"] = o.FileNumber.Get()
	}
	if o.FilmNumber.IsSet() {
		toSerialize["film_number"] = o.FilmNumber.Get()
	}
	if o.Items.IsSet() {
		toSerialize["items"] = o.Items.Get()
	}
	if o.CoreType.IsSet() {
		toSerialize["core_type"] = o.CoreType.Get()
	}
	if o.Size.IsSet() {
		toSerialize["size"] = o.Size.Get()
	}
	if o.IsXbrl.IsSet() {
		toSerialize["is_xbrl"] = o.IsXbrl.Get()
	}
	if o.IsInlineXbrl.IsSet() {
		toSerialize["is_inline_xbrl"] = o.IsInlineXbrl.Get()
	}
	if o.PrimaryDocument.IsSet() {
		toSerialize["primary_document"] = o.PrimaryDocument.Get()
	}
	if o.PrimaryDocDescription.IsSet() {
		toSerialize["primary_doc_description"] = o.PrimaryDocDescription.Get()
	}
	if o.SourceFile.IsSet() {
		toSerialize["source_file"] = o.SourceFile.Get()
	}
	return toSerialize, nil
}

type NullableDTOFilingMetadataDto struct {
	value *DTOFilingMetadataDto
	isSet bool
}

func (v NullableDTOFilingMetadataDto) Get() *DTOFilingMetadataDto {
	return v.value
}

func (v *NullableDTOFilingMetadataDto) Set(val *DTOFilingMetadataDto) {
	v.value = val
	v.isSet = true
}

func (v NullableDTOFilingMetadataDto) IsSet() bool {
	return v.isSet
}

func (v *NullableDTOFilingMetadataDto) Unset() {
	v.value = nil
	v.isSet = false
}

func NewNullableDTOFilingMetadataDto(val *DTOFilingMetadataDto) *NullableDTOFilingMetadataDto {
	return &NullableDTOFilingMetadataDto{value: val, isSet: true}
}

func (v NullableDTOFilingMetadataDto) MarshalJSON() ([]byte, error) {
	return json.Marshal(v.value)
}

func (v *NullableDTOFilingMetadataDto) UnmarshalJSON(src []byte) error {
	v.isSet = true
	return json.Unmarshal(src, &v.value)
}


