├── .gitignore ├── Example └── search_protocol_test.swift ├── MVVMC.xctemplate ├── All │ ├── ___VARIABLE_productName___Model.swift │ ├── ___VARIABLE_productName___ViewController.swift │ └── ___VARIABLE_productName___ViewModel.swift ├── AllCoordinatorOutputs │ ├── ___VARIABLE_productName___Coordinator.swift │ ├── ___VARIABLE_productName___Model.swift │ ├── ___VARIABLE_productName___ViewController.swift │ └── ___VARIABLE_productName___ViewModel.swift ├── Coordinator │ └── ___VARIABLE_productName___Coordinator.swift ├── CoordinatorTests │ └── ___VARIABLE_productName___CoordinatorTests.swift ├── Model │ └── ___VARIABLE_productName___Model.swift ├── TemplateIcon.png ├── TemplateIcon@2x.png ├── TemplateInfo.plist ├── ViewController │ └── ___VARIABLE_productName___ViewController.swift ├── ViewModel │ └── ___VARIABLE_productName___ViewModel.swift └── ViewModelCoordinatorOutputs │ └── ___VARIABLE_productName___ViewModel.swift ├── Makefile ├── Package.resolved ├── Package.swift ├── README.md ├── Sources └── mvvmc-template │ ├── Command │ ├── Command.swift │ ├── CommandInterpreter.swift │ ├── CommandModel.swift │ ├── CommandParser.swift │ └── Execute.swift │ ├── SortImplement │ ├── FirstTokenRewriter.swift │ ├── ImplementWriter.swift │ ├── ProtocolDeclSyntax+Property.swift │ ├── TriviaPiece+Propert.swift │ └── VariableDeclSyntax++Property.swift │ ├── Template │ ├── CoordinatorTemplate.swift │ ├── CoordinatorTestsTemplate.swift │ ├── HeaderTemplate.swift │ ├── ModelTemplate.swift │ ├── Template+Role.swift │ ├── Template.swift │ ├── TemplateSetting.swift │ ├── ViewControllerTemplate.swift │ └── ViewModelTemplate.swift │ ├── Usage.swift │ ├── Util │ ├── CommandLine.swift │ ├── FileVisitor.swift │ ├── Result.swift │ └── String+Capitalize.swift │ └── main.swift ├── Tests ├── LinuxMain.swift └── mvvmc-templateTests │ ├── XCTestManifests.swift │ └── mvvmc_templateTests.swift ├── __OUTPUT__Set ├── __OUTPUT__ │ ├── __OUTPUT__Coordinator.swift │ ├── __OUTPUT__Model.swift │ ├── __OUTPUT__ViewController.swift │ └── __OUTPUT__ViewModel.swift └── __OUTPUT__CoordinatorTests.swift ├── images ├── template_file_screenshot.png └── template_screenshot.png └── mvvmc-template.xcodeproj ├── Files_Info.plist ├── ShellOut_Info.plist ├── SwiftSyntax_Info.plist ├── mvvmc_templateTests_Info.plist ├── project.pbxproj ├── project.xcworkspace ├── contents.xcworkspacedata └── xcshareddata │ ├── IDEWorkspaceChecks.plist │ └── WorkspaceSettings.xcsettings └── xcshareddata └── xcschemes ├── mvvmc-template-Package.xcscheme └── mvvmc-template.xcscheme /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/.gitignore -------------------------------------------------------------------------------- /Example/search_protocol_test.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Example/search_protocol_test.swift -------------------------------------------------------------------------------- /MVVMC.xctemplate/All/___VARIABLE_productName___Model.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/All/___VARIABLE_productName___Model.swift -------------------------------------------------------------------------------- /MVVMC.xctemplate/All/___VARIABLE_productName___ViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/All/___VARIABLE_productName___ViewController.swift -------------------------------------------------------------------------------- /MVVMC.xctemplate/All/___VARIABLE_productName___ViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/All/___VARIABLE_productName___ViewModel.swift -------------------------------------------------------------------------------- /MVVMC.xctemplate/AllCoordinatorOutputs/___VARIABLE_productName___Coordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/AllCoordinatorOutputs/___VARIABLE_productName___Coordinator.swift -------------------------------------------------------------------------------- /MVVMC.xctemplate/AllCoordinatorOutputs/___VARIABLE_productName___Model.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/AllCoordinatorOutputs/___VARIABLE_productName___Model.swift -------------------------------------------------------------------------------- /MVVMC.xctemplate/AllCoordinatorOutputs/___VARIABLE_productName___ViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/AllCoordinatorOutputs/___VARIABLE_productName___ViewController.swift -------------------------------------------------------------------------------- /MVVMC.xctemplate/AllCoordinatorOutputs/___VARIABLE_productName___ViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/AllCoordinatorOutputs/___VARIABLE_productName___ViewModel.swift -------------------------------------------------------------------------------- /MVVMC.xctemplate/Coordinator/___VARIABLE_productName___Coordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/Coordinator/___VARIABLE_productName___Coordinator.swift -------------------------------------------------------------------------------- /MVVMC.xctemplate/CoordinatorTests/___VARIABLE_productName___CoordinatorTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/CoordinatorTests/___VARIABLE_productName___CoordinatorTests.swift -------------------------------------------------------------------------------- /MVVMC.xctemplate/Model/___VARIABLE_productName___Model.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/Model/___VARIABLE_productName___Model.swift -------------------------------------------------------------------------------- /MVVMC.xctemplate/TemplateIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/TemplateIcon.png -------------------------------------------------------------------------------- /MVVMC.xctemplate/TemplateIcon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/TemplateIcon@2x.png -------------------------------------------------------------------------------- /MVVMC.xctemplate/TemplateInfo.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/TemplateInfo.plist -------------------------------------------------------------------------------- /MVVMC.xctemplate/ViewController/___VARIABLE_productName___ViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/ViewController/___VARIABLE_productName___ViewController.swift -------------------------------------------------------------------------------- /MVVMC.xctemplate/ViewModel/___VARIABLE_productName___ViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/ViewModel/___VARIABLE_productName___ViewModel.swift -------------------------------------------------------------------------------- /MVVMC.xctemplate/ViewModelCoordinatorOutputs/___VARIABLE_productName___ViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/MVVMC.xctemplate/ViewModelCoordinatorOutputs/___VARIABLE_productName___ViewModel.swift -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Makefile -------------------------------------------------------------------------------- /Package.resolved: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Package.resolved -------------------------------------------------------------------------------- /Package.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Package.swift -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/README.md -------------------------------------------------------------------------------- /Sources/mvvmc-template/Command/Command.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Command/Command.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Command/CommandInterpreter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Command/CommandInterpreter.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Command/CommandModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Command/CommandModel.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Command/CommandParser.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Command/CommandParser.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Command/Execute.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Command/Execute.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/SortImplement/FirstTokenRewriter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/SortImplement/FirstTokenRewriter.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/SortImplement/ImplementWriter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/SortImplement/ImplementWriter.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/SortImplement/ProtocolDeclSyntax+Property.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/SortImplement/ProtocolDeclSyntax+Property.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/SortImplement/TriviaPiece+Propert.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/SortImplement/TriviaPiece+Propert.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/SortImplement/VariableDeclSyntax++Property.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/SortImplement/VariableDeclSyntax++Property.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Template/CoordinatorTemplate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Template/CoordinatorTemplate.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Template/CoordinatorTestsTemplate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Template/CoordinatorTestsTemplate.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Template/HeaderTemplate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Template/HeaderTemplate.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Template/ModelTemplate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Template/ModelTemplate.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Template/Template+Role.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Template/Template+Role.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Template/Template.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Template/Template.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Template/TemplateSetting.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Template/TemplateSetting.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Template/ViewControllerTemplate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Template/ViewControllerTemplate.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Template/ViewModelTemplate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Template/ViewModelTemplate.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Usage.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Usage.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Util/CommandLine.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Util/CommandLine.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Util/FileVisitor.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Util/FileVisitor.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Util/Result.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Util/Result.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/Util/String+Capitalize.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/Util/String+Capitalize.swift -------------------------------------------------------------------------------- /Sources/mvvmc-template/main.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Sources/mvvmc-template/main.swift -------------------------------------------------------------------------------- /Tests/LinuxMain.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Tests/LinuxMain.swift -------------------------------------------------------------------------------- /Tests/mvvmc-templateTests/XCTestManifests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Tests/mvvmc-templateTests/XCTestManifests.swift -------------------------------------------------------------------------------- /Tests/mvvmc-templateTests/mvvmc_templateTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/Tests/mvvmc-templateTests/mvvmc_templateTests.swift -------------------------------------------------------------------------------- /__OUTPUT__Set/__OUTPUT__/__OUTPUT__Coordinator.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/__OUTPUT__Set/__OUTPUT__/__OUTPUT__Coordinator.swift -------------------------------------------------------------------------------- /__OUTPUT__Set/__OUTPUT__/__OUTPUT__Model.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/__OUTPUT__Set/__OUTPUT__/__OUTPUT__Model.swift -------------------------------------------------------------------------------- /__OUTPUT__Set/__OUTPUT__/__OUTPUT__ViewController.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/__OUTPUT__Set/__OUTPUT__/__OUTPUT__ViewController.swift -------------------------------------------------------------------------------- /__OUTPUT__Set/__OUTPUT__/__OUTPUT__ViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/__OUTPUT__Set/__OUTPUT__/__OUTPUT__ViewModel.swift -------------------------------------------------------------------------------- /__OUTPUT__Set/__OUTPUT__CoordinatorTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/__OUTPUT__Set/__OUTPUT__CoordinatorTests.swift -------------------------------------------------------------------------------- /images/template_file_screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/images/template_file_screenshot.png -------------------------------------------------------------------------------- /images/template_screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/images/template_screenshot.png -------------------------------------------------------------------------------- /mvvmc-template.xcodeproj/Files_Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/mvvmc-template.xcodeproj/Files_Info.plist -------------------------------------------------------------------------------- /mvvmc-template.xcodeproj/ShellOut_Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/mvvmc-template.xcodeproj/ShellOut_Info.plist -------------------------------------------------------------------------------- /mvvmc-template.xcodeproj/SwiftSyntax_Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/mvvmc-template.xcodeproj/SwiftSyntax_Info.plist -------------------------------------------------------------------------------- /mvvmc-template.xcodeproj/mvvmc_templateTests_Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/mvvmc-template.xcodeproj/mvvmc_templateTests_Info.plist -------------------------------------------------------------------------------- /mvvmc-template.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/mvvmc-template.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /mvvmc-template.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/mvvmc-template.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /mvvmc-template.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/mvvmc-template.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /mvvmc-template.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/mvvmc-template.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings -------------------------------------------------------------------------------- /mvvmc-template.xcodeproj/xcshareddata/xcschemes/mvvmc-template-Package.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/mvvmc-template.xcodeproj/xcshareddata/xcschemes/mvvmc-template-Package.xcscheme -------------------------------------------------------------------------------- /mvvmc-template.xcodeproj/xcshareddata/xcschemes/mvvmc-template.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ezura/MVVMC-template/HEAD/mvvmc-template.xcodeproj/xcshareddata/xcschemes/mvvmc-template.xcscheme --------------------------------------------------------------------------------