Comments (3)
Thanks for the explanation, now I that made clear!
from nimdays.
I guess the ref object of RootObj
is for object inheritance, so object of RootObj
is merely means we don't want any inheritance here, is that true? Or there is any other purpose behind scene?
from nimdays.
Hi sorry for the confusion
I quickly went through the code
type ForwardOptions = object
listenAddr*: string
listenPort*: Port
toAddr*: string
toPort*: Port
type Forwarder = object of RootObj
options*: ForwardOptions
proc newForwarder(opts: ForwardOptions): ref Forwarder =
result = new(Forwarder)
result.options = opts
-
value types are
type MyClass = object ..
(allocated on the stack) "can be immutable when initialized withlet
construct` -
ref types are
type MyClass = ref object
(allocated on the heap) -
there is
initXXX
function to create that object on the stack -
there is
newXXX
function to create the object on the heap -
lots of times you will types like
Table[X,Y] and TableRef[X,Y]
basically the same but where the object are stored.
RootObj is only used if you want to enable inheritance, and yes It's not used just how I type and autocomplete code. I'll revise and remove what is not needed.
from nimdays.
Related Issues (13)
- Suggestion: Keep chapters' format in linear order HOT 1
- Tests HOT 2
- Make codeblocks wider HOT 1
- Very new person, can't get first code to compile HOT 3
- Update the book with source code links
- use tcp router with http port forwarding HOT 4
- Incomplete shell commands in Day 1 HOT 3
- Document mdbook dependency HOT 3
- Day 2 example isn't working HOT 1
- Switch to nimibook instead of mdbook
- broken `nim-parsec` link on day 21 HOT 1
- parseopt2 dependency doesn't exist anymore for Nim days 9:TicTacToe
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 nimdays.