Questions tagged [viper]

Please consider using the tags [viper-architecture], [viper-go], [viper-mode], or [viper-lang] instead of catch-all [viper]. (1) [viper-architecture] VIPER is an architectural application design pattern: {View, Interactor, Presenter, Entity, Router}. (2) [viper-mode] Viper is a Vi emulation package for Emacs. (3) [viper-go] is a configuration library for Golang. (4) [viper-lang] is for formal, separation-logic-based verifiers of programming languages.

Please consider using , , , or instead of this catch-all tag.

  1. VIPER is an application architecture, which stands for View, Interactor, Presenter, Entity, and Router. VIPER is intended to divide app’s logical structure into distinct layers of responsibility. It attempts to observe SOLID design patterns in the best way so as to keep code easily maintainable clean, reusable and testable.
  2. Viper (mode) is also a Vi emulation package for Emacs.
  3. Viper is also a configuration library for Golang at https://github.com/spf13/viper
  4. Viper is an open-source verification infrastructure, designed to simplify the development of formal, separation-logic-based verifiers for different programming languages.
35 questions
1
vote
1 answer

UI is not updating after Protocol call Xcode

I was trying to implement viper architecture on my Xcode. I am following an article https://medium.com/cr8resume/viper-architecture-for-ios-project-with-simple-demo-example-7a07321dbd29. also, I downloaded the article source code, and run well also…
Faizul Karim
  • 146
  • 13
1
vote
1 answer

Viper is not considering the mapstructure tags in my structs on umarshalling

when I use the Unmarshal method of Viper to fill my struct with the values in my Yaml file, All struct fileds were still empty, I searched many solutions, but all of them didn't work at all :( I tried changing the tag mapstructure to yaml and…
SHO
  • 11
  • 1
  • 2
1
vote
0 answers

Generics in protocols (Generic parameter 'D' could not be inferred)

HttpService Generic protocol: import Foundation import Moya protocol HttpService { associatedtype T associatedtype D typealias ResultClosure = (Result) -> Void typealias ActivityClosure = ((_:…
Sheikh Atif
  • 139
  • 2
  • 12
1
vote
2 answers

Swift VIPER Interactor and Presenter rules for data validation

I do have few questions. What the best way to use interactor: Let's say in interactor I save some data, but I want to check this data and show next alert: self.presenter?.showAlert(with: "All fields are required for adding…
Matrosov Oleksandr
  • 25,505
  • 44
  • 151
  • 277
1
vote
1 answer

How to pass IBOutlet value from view to interactor in VIPER iOs?

I have a textView that loads with the view. Then the user can edit and modify the value, and when the user press back in the navigation button, then viewWillDisappear() is launched and the value of the textView outlet is passed to the interactor,…
Alfro
  • 1,524
  • 2
  • 21
  • 37
1
vote
1 answer

Ctrl-o in vimpulse?

does anyone know how to enable Ctrl-o to switch to normal-mode for one command in viper-mode or vimpulse? In viper-mode it's bound to open-line (which is what it does for vanilla Emacs and in vimpulse it is bound to (vimpulse-jump-backward ARG). I'm…
hatmatrix
  • 42,883
  • 45
  • 137
  • 231
1
vote
2 answers

Rebinding C-c to C-c

I'm using Viper, and I want to change its C-c and C-g to the original emacs functions. I can rebind C-g with (define-key viper-vi-global-user-map "C-g" 'keyboard-quit), but how can I rebind C-c, since it's a prefix key? Thanks!
konr
  • 1,173
  • 12
  • 26
0
votes
0 answers

Vipermonkey/ cannot import from logger import log and from core.meta import get_metadata.exif error. How can I solve them?

When I run the command "C:\Users\X\ViperMonkey-master\vipermonkey>python vmonkey.py -f C:\Users\X\Desktop\Example.docx", I get the following error. How can I solve it? C:\Users\X\ViperMonkey-master\vipermonkey>python vmonkey.py -f…
mermer
  • 1
0
votes
1 answer

Golang viper cannot read configuration

I've been trying reading configuration by viper, while it always panic nil pointer reference(i've been set the config path and config name). Then i tried to make a execution point on it and it tells me : unreadable: could not read string at 0x8 due…
0
votes
0 answers

How to create a UISplitViewController with a VIPER pattern and how to handle the communication between viewControllers?

I've created a UISplitView Module using VIPER architecture, my intention is to use it many times during the project. I want to handle communication between the two child viewcontrollers. I am not being able to think a suitable way for this. This is…
0
votes
0 answers

Viper navigation using swinject assemblies

Currently i'm creating my modules like this: final class DiscoverAssembly { func build() -> UIViewController? { let container = Container() container.register(DiscoverInteractorInput.self) { (_, presenter: DiscoverPresenter)…
Bobby Redjeans
  • 575
  • 1
  • 4
  • 18
0
votes
2 answers

Enabling viper-mode and vimpulse in compilation-mode

viper.el is hardcoded to disable viper in compilation-mode. How can I fix this without modifying the original file?
Natan Yellin
  • 6,063
  • 5
  • 38
  • 57
0
votes
1 answer

How to use go:embed to read application properties

I use viper to load runtime environment specific property files (located under ./configs/*.conf). I am looking to see how I can embed these files in the binary. Following snippet that loads the…
Rocky
  • 365
  • 1
  • 5
  • 15
0
votes
1 answer

remapping and in Vimpulse to scroll more

In Some Thoughts on Emacs and Vim, Shinobu recommendation to remap and doesn't work on Emacs 2.3.1 with Vimpulse 0.5. What am I doing wrong? ;; from .emacs ; simulate vim's "nnoremap 1010j" (vimpulse-map " " (lambda…
Natan Yellin
  • 6,063
  • 5
  • 38
  • 57
0
votes
3 answers

viper-mode changes key

I want to use the key (C-d, I think) for forward-deletion in viper-mode. Before starting viper-mode, works correctly. In viper-mode, jumps to the buffer's last line. I have added (setq viper-ex-style-editing nil) to…
Natan Yellin
  • 6,063
  • 5
  • 38
  • 57