Comments (12)
This would definitely be a breaking change.
A fundamental aspect of V is that you cannot create methods on structs in other modules.
This is why all your api methods on the App struct must be in the same module as the file where your App struct is defined.
Those api methods could be tiny wrappers that simply call functions in other modules, but the main api method definition must be in the same module.
from v.
I understand your concerns, but we can consider other solutions to achieve file organization and management in this way. For large projects this is very important. No one wants their code directory to be a mess
I understand your desire to organize your code in that way, but it has many disadvantages, in terms of complexity for the compiler.
from v.
I think this was suggested before. "Virtual submodules" or something. There was a long discussion on GitHub.
from v.
It can be set up via v.mod. I'm personally not against this feature, but many are against due to complications.
from v.
This would definitely be a breaking change.
A fundamental aspect of V is that you cannot create methods on structs in other modules.
This is why all your api methods on the App struct must be in the same module as the file where your App struct is defined.
Those api methods could be tiny wrappers that simply call functions in other modules, but the main api method definition must be in the same module.
I understand your concerns, but we can consider other solutions to achieve file organization and management in this way. For large projects this is very important. No one wants their code directory to be a mess
from v.
I imported the App and Context structures in the api module, allowing the code and no error message; but when I access this api it will return “404 Not Found”
from v.
I understand your concerns, but we can consider other solutions to achieve file organization and management in this way. For large projects this is very important. No one wants their code directory to be a mess
I understand your desire to organize your code in that way, but it has many disadvantages, in terms of complexity for the compiler.
But I did this and the compiler didn't complain; I think this should be fixed.
from v.
@spytheman
Are there any other roundabout ways to achieve similar code organization and management?
from v.
It can be set up via v.mod. I'm personally not against this feature, but many are against due to complications.
Can you give me an example to show me how to do it
from v.
It can be set up via v.mod. I'm personally not against this feature, but many are against due to complications.
Is it an implementation similar to Rust? Can you give an example?
from v.
This is not possible
This is ok(This is possible, but it still doesn't achieve the purpose of putting V files in different folders)
from v.
Is it possible to encapsulate it in a very concise way like go?
from v.
Related Issues (20)
- v broken again on freebsd when using clang, the default compiler HOT 1
- Compiler bug when trying to return an interface-optional with a fallback default value
- Sorting an array of references HOT 9
- Building 0.4.6 release: `V panic: No such file or directory; code: 2` HOT 13
- V allows duplicated operator method
- x &&= y is not implemented HOT 4
- x.json2 fails to decode a map with number keys HOT 2
- eof ignored because of <> HOT 1
- when <circular> printing does not show the number of item in the array HOT 2
- builder error: cannot convert 'struct array' to 'struct array *'
- Including Homebrew's sshlib fails to compile HOT 1
- cgen error for generic function over maps and arrays HOT 1
- Allows annonymous struct type to be passed as args
- c-style for loop with type alias provokes build error
- cannot use constants with values obtained using `$d` as a condition in comptime `if`
- Compiler Error for Unicode escape exceeding max value inside a Raw String
- cgen error for `assert foption() == none`
- builtin.string.camel_to_snake need improve HOT 1
- Cannot compile v compiler in Windows with an account name containing Unicode characters HOT 3
- builder error: struct or union expected HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from v.