Skip to content

Instantly share code, notes, and snippets.

@ulisseshen
Created March 28, 2024 23:35
Show Gist options
  • Save ulisseshen/dd512a133cd77e407def2c5232dd56cf to your computer and use it in GitHub Desktop.
Save ulisseshen/dd512a133cd77e407def2c5232dd56cf to your computer and use it in GitHub Desktop.
Document type sem método factory
enum DocumentStatus{
pending,
approved,
rejected
}
class Document {
String title;
String content;
DocumentStatus status;
Document(this.title, this.content, [this.status = DocumentStatus.pending]);
}
// SEM O USO DO FACTORY
void main() {
final document = Document('title', 'content');
print(document.status); // DocumentStatus.pending
final approvedDocument = Document(document.title, document.content, DocumentStatus.approved);
print(approvedDocument.status); // DocumentStatus.approved
final rejectedDocument = Document(document.title, document.content, DocumentStatus.rejected);
print(rejectedDocument.status); // DocumentStatus.rejected
final pendingDocument = Document(document.title, document.content, DocumentStatus.pending);
print(pendingDocument.status); // DocumentStatus.pending
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment