On Thursday, 3 May 2012 at 14:30:38 UTC, Steven Schveighoffer
wrote:
I suggest:
1. Only expand tree to the level of the current symbol
selected. So for instance, you click on std.datetime, you see
all the top-level symbols of std.datetime *not* expanded. If
you click on std.datetime.Month,
On Thursday, 3 May 2012 at 14:27:38 UTC, Jacob Carlborg wrote:
The right side is pretty empty if you have a wide screen.
Perhaps the symbols can be placed there.
On my current 16:9 1080p monitor, the full width of the page is
utilized by the main documentation, tested with Opera and Chrome
On Thursday, 3 May 2012 at 08:16:48 UTC, Rory McGuire wrote:
Would be great if you could make it an accordion with a live
search at the
top.
An accordion is a nice idea, and Bootstrap has good support for
it.
Where would you have the search, exactly, though? And do you mean
the existing
On Thursday, 3 May 2012 at 06:53:42 UTC, Ary Manzana wrote:
I don't think the main documentation order is right in the
first place. If a module provides many functions, like
std.algorithm, I don't see how there could possibly be an
intended order, like these are more likely to be used.
In
On Fri, 04 May 2012 09:56:48 -0400, Jakob Ovrum jakobov...@gmail.com
wrote:
On Thursday, 3 May 2012 at 14:30:38 UTC, Steven Schveighoffer wrote:
I suggest:
1. Only expand tree to the level of the current symbol selected. So
for instance, you click on std.datetime, you see all the
On Friday, 4 May 2012 at 14:48:04 UTC, Steven Schveighoffer wrote:
I don't see it working that way. If I click on etc.c.sqlite3
for example, it doesn't collapse std.
Essentially, what I mean is, I should only see the parents,
immediate children, and siblings of the currently selected item
On Fri, 04 May 2012 10:59:46 -0400, Jakob Ovrum jakobov...@gmail.com
wrote:
On Friday, 4 May 2012 at 14:48:04 UTC, Steven Schveighoffer wrote:
packages that a module is in. For example, etc.c.sqlite3 is in
packages etc and c. If we make those breadcrumbs instead of part of a
large
On Friday, 4 May 2012 at 15:11:39 UTC, Steven Schveighoffer wrote:
I was envisioning eliminating the rest of the tree, and you'd
have to click on one of the breadcrumbs to get it back. But
that might be weird.
Something like:
etc . c .
sqlite3
* func1
* func2
...
And then you click on etc
I use rbenv to manage multiple versions of Ruby.
So, I ported rbenv to D.
https://github.com/repeatedly/denv
I tested dmd on Linux and Mac.
(Sorry, I am not GDC and LDC user)
I will port ruby-build If necessary.
Regards,
Masahiro
I would put a text input above the accordian, with the word Filter
Module or something like that.
It would be great if it were possible to search the module too or perhaps a
module description of some sort, but that is more work.
The purpose for the text input filter on the accordian would just
On Fri, 04 May 2012 17:54:11 +0200, Masahiro Nakagawa
repeate...@gmail.com wrote:
I use rbenv to manage multiple versions of Ruby.
So, I ported rbenv to D.
https://github.com/repeatedly/denv
I tested dmd on Linux and Mac.
(Sorry, I am not GDC and LDC user)
I will port ruby-build If
On 2012-05-04 16:04, Jakob Ovrum wrote:
On Thursday, 3 May 2012 at 14:27:38 UTC, Jacob Carlborg wrote:
The right side is pretty empty if you have a wide screen. Perhaps the
symbols can be placed there.
On my current 16:9 1080p monitor, the full width of the page is utilized
by the main
On 2012-05-04 19:54, simendsjo wrote:
On Fri, 04 May 2012 17:54:11 +0200, Masahiro Nakagawa
repeate...@gmail.com wrote:
I use rbenv to manage multiple versions of Ruby.
So, I ported rbenv to D.
https://github.com/repeatedly/denv
I tested dmd on Linux and Mac.
(Sorry, I am not GDC and LDC
On Friday, 4 May 2012 at 17:54:35 UTC, simendsjo wrote:
On Fri, 04 May 2012 17:54:11 +0200, Masahiro Nakagawa
repeate...@gmail.com wrote:
I use rbenv to manage multiple versions of Ruby.
So, I ported rbenv to D.
https://github.com/repeatedly/denv
I tested dmd on Linux and Mac.
(Sorry, I am
On Friday, 4 May 2012 at 19:09:01 UTC, Jacob Carlborg wrote:
On 2012-05-04 19:54, simendsjo wrote:
On Fri, 04 May 2012 17:54:11 +0200, Masahiro Nakagawa
repeate...@gmail.com wrote:
I use rbenv to manage multiple versions of Ruby.
So, I ported rbenv to D.
https://github.com/repeatedly/denv
I
Masahiro Nakagawa repeate...@gmail.com wrote in message
news:niagensidmjugqbxr...@forum.dlang.org...
On Friday, 4 May 2012 at 17:54:35 UTC, simendsjo wrote:
On Fri, 04 May 2012 17:54:11 +0200, Masahiro Nakagawa
repeate...@gmail.com wrote:
I use rbenv to manage multiple versions of Ruby.
On 2012-05-04 21:38, Masahiro Nakagawa wrote:
Yes. But I don't know the detail of dvm implementation.
rbenv is a small and compact version manager than rvm.
(If you want to know more comparison of rbenv and rvm,
See https://github.com/sstephenson/rbenv )
DVM can't even do half of the things
Jacob Carlborg d...@me.com wrote in message
news:jo1gri$1prf$1...@digitalmars.com...
On 2012-05-04 21:38, Masahiro Nakagawa wrote:
Yes. But I don't know the detail of dvm implementation.
rbenv is a small and compact version manager than rvm.
(If you want to know more comparison of rbenv and
On 2012-05-04 23:31, Nick Sabalausky wrote:
There's a little more work could probably be done on DVM's dmd-compiling. It
doesn't support passing options to the makefiles. And IIRC it always does a
full clean rebuild, it really should have clean separate, so you don't
have to recompile
Jacob Carlborg d...@me.com wrote in message
news:jo1jnt$1vfl$1...@digitalmars.com...
Last time it was brought up, I was unsure of quite what you had in mind.
I
was under the impression that you wanted to redesign the whole way the
command system *worked*. It's occurred to me that's maybe not
On 5/3/2012 1:32 PM, Simon wrote:
On 03/05/2012 18:21, Mehrdad wrote:
In Windows, you need to register a window class before you can
actually create an instance of it.
If you are mucking about on 'doze you might find my dubious port of the
ATL window classes relevant:
On 5/3/2012 1:41 PM, Mehrdad wrote:
On Thursday, 3 May 2012 at 18:32:18 UTC, Simon wrote:
On 03/05/2012 18:21, Mehrdad wrote:
In Windows, you need to register a window class before you can
actually create an instance of it.
If you are mucking about on 'doze you might find my dubious port of
On 05/03/2012 10:50 AM, Andrei Alexandrescu wrote:
Just letting you all know we're working on the frustrating and
increasingly frequent Load at xx.xx, try again later errors when
reading this forum through NNTP. They are caused by a significant growth
spurt in newsgroup readership that occurred
Jonas, thank you for your answer.
I am using an array of objects, all of which have a common type
(They are all sub classes of Field). If I declare an array of
these objects, D seems to try to cast them all to the last type
in the array, rather than picking a common supertype. This
happens even if I specify a type for the
On Friday, May 04, 2012 08:33:32 James Miller wrote:
I am using an array of objects, all of which have a common type
(They are all sub classes of Field). If I declare an array of
these objects, D seems to try to cast them all to the last type
in the array, rather than picking a common
Hi,
I'm currently doing some manual memory management and as the delete
keyword is deperecated I want to replace it with a custom Delete
template. I now need to destroy a array of structs, this however seems
only be possible by using the typeinfo object of the struct and calling
xdtor on
On 4 May 2012 01:40, Alex Rønne Petersen xtzgzo...@gmail.com wrote:
On 04-05-2012 02:13, Iain Buclaw wrote:
On 3 May 2012 16:13, Don Clugstond...@nospam.com wrote:
On 03/05/12 16:13, Andrei Alexandrescu wrote:
On 5/3/12 9:55 AM, Don Clugston wrote:
On 28/04/12 20:47, Walter Bright
Cool! Thanks!
So all I need to do is remember the indices of functions in the vtable
and extract them manually every time like this, right?
On Fri, May 4, 2012 at 5:31 AM, Mehrdad wfunct...@hotmail.com wrote:
class Foo
{
void test() { }
}
void main(string[] args)
{
auto f =
On 2012-05-03 20:46, Gor Gyolchanyan wrote:
I need to get a pointer to a virtual method, which is in turn a
function pointer, being set by virtual method binding.
Can anyone, please, tell me how to get it? Taking the delegate of the
method won't do, because I need it to behave exactly as a
On 2012-05-03 22:36, Jonathan M Davis wrote:
On Thursday, May 03, 2012 15:30:40 Don Clugston wrote:
What is this D3 thing
As far as I can tell, 'D3' was invented by newcomers to the forums.
I think that what it comes down to is that there are a variety of people who
want features added
On Friday, May 04, 2012 09:38:24 Jacob Carlborg wrote:
On 2012-05-03 22:36, Jonathan M Davis wrote:
On Thursday, May 03, 2012 15:30:40 Don Clugston wrote:
What is this D3 thing
As far as I can tell, 'D3' was invented by newcomers to the forums.
I think that what it comes down to
Thanks, I'll look into it.
On Fri, May 4, 2012 at 11:25 AM, Jacob Carlborg d...@me.com wrote:
On 2012-05-03 20:46, Gor Gyolchanyan wrote:
I need to get a pointer to a virtual method, which is in turn a
function pointer, being set by virtual method binding.
Can anyone, please, tell me how to
Chris Cain wrote:
On Thursday, 3 May 2012 at 10:03:55 UTC, Jens Mueller wrote:
What is a good solution when using member functions on a
range's/container's element?
Note, the problem only applies when storing structs because
classes
behave like references.
I think in this case, it might
So here's some problems.
I use 'const ref' to pass structs to functions (note: because 'in ref'
doesn't seem to work)
And I often need to return structs by ref too, but I'm having problems:
void test( const ref Thing x ) {} // this works fine. note, 'const ref'
works fine here (in lieu of 'in
On Friday, May 04, 2012 11:38:32 Manu wrote:
I try rearranging the syntax to make the first issue stop complaining:
ref const(Thing) func2() { return gThing; } // this seems to work now, but
i don't like the inconsistency...
That's thanks to the nonsense that putting const on the left-hand
On Thu, 03 May 2012 23:25:26 +0100, H. S. Teoh hst...@quickfur.ath.cx
wrote:
On Thu, May 03, 2012 at 01:51:20PM -0700, Ali Çehreli wrote:
On 05/03/2012 01:52 PM, deadalnix wrote:
Le 03/05/2012 16:50, Andrei Alexandrescu a écrit :
Just letting you all know we're working on the frustrating and
On 2012-05-04 01:57, H. S. Teoh wrote:
To be frank, I question the wisdom of not just using ld on Posix
systems... but OTOH, the world *needs* better linker technology than we
currently have, so this projects like this one is a good thing.
He can start with a version for Windows. If as much
On 2012-05-03 19:21, Mehrdad wrote:
In Windows, you need to register a window class before you can
actually create an instance of it.
Mapping this idea to D (and most other languages, I admit) is hard.
Microsoft's solution in C# is pretty ugly.
BTW, what's wrong with using some existing GUI
On 5/4/12 2:26 AM, Jeff Nowakowski wrote:
On 05/03/2012 10:50 AM, Andrei Alexandrescu wrote:
Just letting you all know we're working on the frustrating and
increasingly frequent Load at xx.xx, try again later errors when
reading this forum through NNTP. They are caused by a significant growth
On Thursday, 3 May 2012 at 18:47:11 UTC, Gor Gyolchanyan wrote:
I need to get a pointer to a virtual method, which is in turn a
function pointer, being set by virtual method binding.
Can anyone, please, tell me how to get it? Taking the delegate
of the
method won't do, because I need it to
Does this have an overhead over calling virtual method directly?
On Fri, May 4, 2012 at 1:30 PM, jerro a...@a.com wrote:
On Thursday, 3 May 2012 at 18:47:11 UTC, Gor Gyolchanyan wrote:
I need to get a pointer to a virtual method, which is in turn a
function pointer, being set by virtual
On 2012-05-04 10:38, Manu wrote:
So here's some problems.
I use 'const ref' to pass structs to functions (note: because 'in ref'
doesn't seem to work)
And I often need to return structs by ref too, but I'm having problems:
void test( const ref Thing x ) {} // this works fine. note, 'const ref'
On Friday, 4 May 2012 at 09:51:51 UTC, Gor Gyolchanyan wrote:
Does this have an overhead over calling virtual method directly?
If you call the function directly, it probably gets inlined.
If you call it through a function pointer, it does have some
overhead over calling the virtual method
On 4 May 2012 11:46, Jonathan M Davis jmdavisp...@gmx.com wrote:
On Friday, May 04, 2012 11:38:32 Manu wrote:
I try rearranging the syntax to make the first issue stop complaining:
ref const(Thing) func2() { return gThing; } // this seems to work now,
but
i don't like the
So, the only overhead in making a virtual call this way over calling
the method directly is exactly 1 extra function call?
On Fri, May 4, 2012 at 2:02 PM, jerro a...@a.com wrote:
On Friday, 4 May 2012 at 09:51:51 UTC, Gor Gyolchanyan wrote:
Does this have an overhead over calling virtual
On 4 May 2012 12:52, Jacob Carlborg d...@me.com wrote:
On 2012-05-04 10:38, Manu wrote:
This syntax complains, but it's precisely the same expression I use to
pass an argument in to a function, and it's fine there:
remedy\modules\hud.d(35):**Error: function remedy.hud.func without
'this'
On 4 May 2012 11:46, Jonathan M Davis jmdavisp...@gmx.com wrote:
typeof(foo) blah2 = func;
I just spotted the problem:
typeof(foo) blah = foo;
Was missing the '' before the type. This works... However, in my case, I
don't have such a function defined to copy the type from, so it doesn't
help
On Thursday, 3 May 2012 at 18:55:17 UTC, simendsjo wrote:
On Thu, 03 May 2012 15:29:07 +0200, David d...@dav1d.de wrote:
rdmd? http://dlang.org/rdmd.html
And dvm: https://github.com/jacob-carlborg/dvm
Thanks both for the suggestions. RDMD looks useful, but am I
right thinking I can't run
I have spent some time setting up nginx as a reverse proxy for
vibe, and I thought I might share some of my issues here for now,
just in case it helps someone.
I will assume that you are generally familiar with configuring
nginx, where the files are, how server directives work etc.
The
On Thursday, 3 May 2012 at 16:29:48 UTC, Manu wrote:
Are you a visual studio user? Tried VisualD?
If not, tried Mono-D?
EditPad is as far as I go! I tried using Code::Blocks about a
year ago, but couldn't get it to play nicely with the compiler...
Jonathan M Davis:
That's thanks to the nonsense that putting const on the
left-hand side of a
member function is legal, making it so that you _must_ use
parens with const
and return types for the const to apply to the return type
rather than the function.
In Phobos there is a closed
Hi folks,
it was really good and productive discussion on const and
immutability,
special thanks for those (Jonatan,Steven,Cris,etc) who answered
hard Mehrad's questions and clarified so important topics.
Can I kindly ask you folks to update FAQ on the site to have
ability for newcomers to
On 2012-05-04 12:09, Manu wrote:
Ah, of course! I didn't spot that _
Thanks.
I suppose technically, 'ref' can lead to the same ambiguity. This must
be the core of the problem. ref needs to be supported with parentheses?
I'm not sure, since you can't declare a variable as ref I think the
* using `try_files`, nginx complains that you can't use proxy_pass
inside a named location (like `@vibe`), which means you can't use
try_files to serve arbitrary static files, hence the massive list of
extensions.
why not doing:
root /path/to/static
location / {
try_files $uri @app_proxy
On 2012-05-04 12:37, Iain Staffell wrote:
Thanks both for the suggestions. RDMD looks useful, but am I right
thinking I can't run it from anywhere unless I'm able to mess with PATH
variables?
DVM will handle this for you.
I can't figure out where to get started with DVM, so will give that a
On Fri, 04 May 2012 02:45:03 -0400, Benjamin Thaut
c...@benjamin-thaut.de wrote:
Hi,
I'm currently doing some manual memory management and as the delete
keyword is deperecated I want to replace it with a custom Delete
template. I now need to destroy a array of structs, this however seems
On 4 May 2012 14:49, Jacob Carlborg d...@me.com wrote:
On 2012-05-04 12:09, Manu wrote:
Ah, of course! I didn't spot that _
Thanks.
I suppose technically, 'ref' can lead to the same ambiguity. This must
be the core of the problem. ref needs to be supported with parentheses?
I'm not
On Friday, 4 May 2012 at 11:49:44 UTC, Jacob Carlborg wrote:
On 2012-05-04 12:09, Manu wrote:
Ah, of course! I didn't spot that _
Thanks.
I suppose technically, 'ref' can lead to the same ambiguity.
This must
be the core of the problem. ref needs to be supported with
parentheses?
I'm not
On Fri, 04 May 2012 01:13:07 -0400, Mehrdad wfunct...@hotmail.com wrote:
Hmm... how exactly do you use RTInfo? (Is it usable yet? All I see is a
void* and a dummy template.)
You have to fill in object.di's RTInfo(T) to be whatever you want. As I
said, it's very beta, intended as a hook to
On Fri, 04 May 2012 05:00:10 -0400, Regan Heath re...@netmail.co.nz
wrote:
Opera does this right too :)
Yeah, I still have all my sent posts in opera...
One thing that annoys me though, if a message doesn't get sent, it stays
in your outbox. Then when you double-click on it to
Am 04.05.2012 14:18, schrieb Steven Schveighoffer:
On Fri, 04 May 2012 02:45:03 -0400, Benjamin Thaut
c...@benjamin-thaut.de wrote:
Hi,
I'm currently doing some manual memory management and as the delete
keyword is deperecated I want to replace it with a custom Delete
template. I now need to
On 05/04/2012 10:38 AM, Manu wrote:
So here's some problems.
I use 'const ref' to pass structs to functions (note: because 'in ref'
doesn't seem to work)
And I often need to return structs by ref too, but I'm having problems:
void test( const ref Thing x ) {} // this works fine. note, 'const
On Friday, 4 May 2012 at 12:45:23 UTC, Timon Gehr wrote:
This should work:
const(Thing) function()ref blah2 = func;
Except that it does not, because 'ref' is not currently a valid
function 'storage class'. This seems to be an issue that
deserves a bug report.
For ref functions, 'ref' is
On Fri, 04 May 2012 08:38:21 -0400, Benjamin Thaut
c...@benjamin-thaut.de wrote:
Am 04.05.2012 14:18, schrieb Steven Schveighoffer:
On Fri, 04 May 2012 02:45:03 -0400, Benjamin Thaut
c...@benjamin-thaut.de wrote:
Hi,
I'm currently doing some manual memory management and as the delete
On Fri, 04 May 2012 09:14:11 -0400, Steven Schveighoffer
schvei...@yahoo.com wrote:
I remember that __dtor does the wrong thing, and I advocated it should
do the same thing as calling xdtor, but it didn't go anywhere.
See this bug report:
http://d.puremagic.com/issues/show_bug.cgi?id=5667
So I do a lot of module scanning via allMembers, and I'm consistently
running into an awkward problem:
module test.blah;
static this()
{
foreach(m; __traits(allMembers, test.module))
{
// m is a string, the only way I know to address the thing m references
is: mixin(m), and this can't be
On Thu, 03 May 2012 19:47:24 -0400, Trass3r u...@known.com wrote:
I'm interested in starting a project to make a linker besides optlink
for dmd on windows.
Imho changing dmd to use COFF (incl. 64 support) instead of that crappy
OMF would be more beneficial than yet another linker.
+1
IMHO this should compile:
---
mixin template T() { final void f() { } }
class A { mixin T ta; }
class B : A { mixin T tb; }
---
these asserts should pass:
---
mixin template T(string s) {
string f() { return s; }
}
class A {
mixin T!T1 ta1;
mixin T!T2 ta2;
mixin T!T;
}
class
On Fri, May 04, 2012 at 01:46:21AM -0700, Jonathan M Davis wrote:
On Friday, May 04, 2012 11:38:32 Manu wrote:
I try rearranging the syntax to make the first issue stop complaining:
ref const(Thing) func2() { return gThing; } // this seems to work now, but
i don't like the
On 4 May 2012 16:53, H. S. Teoh hst...@quickfur.ath.cx wrote:
On Fri, May 04, 2012 at 01:46:21AM -0700, Jonathan M Davis wrote:
On Friday, May 04, 2012 11:38:32 Manu wrote:
I try rearranging the syntax to make the first issue stop complaining:
ref const(Thing) func2() { return gThing;
On Fri, May 04, 2012 at 03:34:00PM +0200, Adam D. Ruppe wrote:
__traits(getMember, test.module, m);
should work.
Though you should probably test for non-data members before attempting
to use getMember (try __traits(compiles, __traits(getMember, ...))).
T
--
Democracy: The triumph of
On 4 May 2012 16:34, Adam D. Ruppe destructiona...@gmail.com wrote:
__traits(getMember, test.module, m);
should work.
Tried that:
static if( is( __traits( getMember, mixin( moduleName ), m ) == interface )
)
{
pragma( msg, Is an interface: ~ m );
}
On 4 May 2012 17:01, Manu turkey...@gmail.com wrote:
On 4 May 2012 16:34, Adam D. Ruppe destructiona...@gmail.com wrote:
__traits(getMember, test.module, m);
should work.
Tried that:
static if( is( __traits( getMember, mixin( moduleName ), m ) == interface
) )
{
pragma( msg, Is an
On 4 May 2012 17:01, H. S. Teoh hst...@quickfur.ath.cx wrote:
On Fri, May 04, 2012 at 03:34:00PM +0200, Adam D. Ruppe wrote:
__traits(getMember, test.module, m);
should work.
Though you should probably test for non-data members before attempting
to use getMember (try __traits(compiles,
On Friday, 4 May 2012 at 10:05:54 UTC, Gor Gyolchanyan wrote:
So, the only overhead in making a virtual call this way over
calling
the method directly is exactly 1 extra function call?
I guess so. You are calling a function that does a virtual call
and doesn't do anything else, so what other
On Fri, May 04, 2012 at 05:03:36PM +0300, Manu wrote:
On 4 May 2012 17:01, Manu turkey...@gmail.com wrote:
On 4 May 2012 16:34, Adam D. Ruppe destructiona...@gmail.com wrote:
__traits(getMember, test.module, m);
should work.
Tried that:
static if( is( __traits( getMember,
On 4 May 2012 17:09, H. S. Teoh hst...@quickfur.ath.cx wrote:
On Fri, May 04, 2012 at 05:03:36PM +0300, Manu wrote:
On 4 May 2012 17:01, Manu turkey...@gmail.com wrote:
On 4 May 2012 16:34, Adam D. Ruppe destructiona...@gmail.com wrote:
__traits(getMember, test.module, m);
Great! Thanks!
After I'm done with this, I'll propose adding it to Phobos.
A genuine dynamic dispatch mechanism would be very useful.
On Fri, May 4, 2012 at 6:04 PM, jerro a...@a.com wrote:
On Friday, 4 May 2012 at 10:05:54 UTC, Gor Gyolchanyan wrote:
So, the only overhead in making a virtual
Did you see my solution? I think it's what you're looking for...
On Friday, 4 May 2012 at 10:05:54 UTC, Gor Gyolchanyan wrote:
So, the only overhead in making a virtual call this way over
calling
the method directly is exactly 1 extra function call?
On Fri, May 4, 2012 at 2:02 PM, jerro
Yes! Your solution looks exactly like what I wanted. The reason why I
considered additional alternatives is because your solutions looks
very fast (YES!!!), but not very portable and safe, so after testing,
if it turns out to be inconsistent, I'll have to use something else.
On Fri, May 4, 2012
On Fri, May 04, 2012 at 04:57:30PM +0300, Manu wrote:
On 4 May 2012 16:53, H. S. Teoh hst...@quickfur.ath.cx wrote:
[...]
Yeah, I've recently started building the habit of always using
parentheses with const applied to a type, in order to make it less
confusing with const as applied to a
Ah okay. Yeah it's not 'safe' at all... but I think the '6' comes
from the number of members that Foo has. If you figure out how
many methods there are in the v-table, then that should get you
the index (though don't quote me on this... you should look at
the compiler source code if you want
This idea is too obvious and I suppose I'm the only one not knowing it,
but I have never seen it's implementation. Why?
The idea:
1. `Object` class has hidden `isAlive` field which is true since
construction and up to finalization.
2. Every method asserts that the object is alive first.
3.
Oh okay, I see. Let me try it. :)
@Everyone: Haha thanks for pointing me to the existing libraries.
:) I'm doing this more for learning than anything else, so I'm
trying to solve these problems myself instead of just using
another library.
And it seems to be going well:
class Window
{
On 05/04/2012 03:00 PM, Jakob Ovrum wrote:
On Friday, 4 May 2012 at 12:45:23 UTC, Timon Gehr wrote:
This should work:
const(Thing) function()ref blah2 = func;
Except that it does not, because 'ref' is not currently a valid
function 'storage class'. This seems to be an issue that deserves a
On Fri, 04 May 2012 10:19:08 -0400, H. S. Teoh hst...@quickfur.ath.cx
wrote:
Argh... this is really annoying. So I tried all sorts of combinations of
function pointer syntax in order to get the correct type for a ref
function that returns const(T), but couldn't. So I decided to let the
I'm not going to cherry-pick methods in any case. I'll have all
methods analyzed at compile time, by iterating over the overloads of
each method and have them searched in the vtable to get their indices
at launch time. It'll be easy to construct a dynamic virtual method
call.
On Fri, May 4, 2012
On Friday, 4 May 2012 at 14:34:20 UTC, Timon Gehr wrote:
It is an attribute:
int x;
ref {
int foo(){ return x; }
int bar(){ return x; }
}
ref:
int qux(){ return x; }
static assert(typeof(qux).stringof == int function() ref);
Thanks, this is news to me! I never noticed that ref was
On 05/04/2012 04:53 PM, Jakob Ovrum wrote:
On Friday, 4 May 2012 at 14:34:20 UTC, Timon Gehr wrote:
It is an attribute:
int x;
ref {
int foo(){ return x; }
int bar(){ return x; }
}
ref:
int qux(){ return x; }
static assert(typeof(qux).stringof == int function() ref);
Thanks, this
On Friday, 4 May 2012 at 14:57:14 UTC, Timon Gehr wrote:
What would be the meaning of
void foo(ref void function() fn) { }
?
Parameter storage classes can only go before the type, while
function attributes can also go after the parameter list (of the
function pointer or delegate for this
Am 03.05.2012 22:51, schrieb Ali Çehreli:
On 05/03/2012 01:52 PM, deadalnix wrote:
Le 03/05/2012 16:50, Andrei Alexandrescu a écrit :
Just letting you all know we're working on the frustrating and
increasingly frequent Load at xx.xx, try again later errors when
reading this forum through NNTP.
Am 04.05.2012 15:14, schrieb Steven Schveighoffer:
On Fri, 04 May 2012 08:38:21 -0400, Benjamin Thaut
c...@benjamin-thaut.de wrote:
Am 04.05.2012 14:18, schrieb Steven Schveighoffer:
On Fri, 04 May 2012 02:45:03 -0400, Benjamin Thaut
c...@benjamin-thaut.de wrote:
Hi,
I'm currently doing
On Fri, 04 May 2012 11:20:41 -0400, Benjamin Thaut
c...@benjamin-thaut.de wrote:
Thanks, but thats exactly what I'm currently doing. This still is a
indirect function call, and I hoped that there is a way to directly call
the destructor.
Then no, there isn't a better way. If you look at
On 4 May 2012 18:07, Jakob Ovrum jakobov...@gmail.com wrote:
On Friday, 4 May 2012 at 14:57:14 UTC, Timon Gehr wrote:
What would be the meaning of
void foo(ref void function() fn) { }
?
Parameter storage classes can only go before the type, while function
attributes can also go after
On Friday, 4 May 2012 at 15:49:03 UTC, Manu wrote:
It's very counter intuitive to mark the _function_ ref, rather
than it's
return type.
It is a function attribute, so it makes perfect sense. The rest
is an issue of documentation/education.
I agree it may not be optimally intuitive, but I
On 4 May 2012 18:55, Jakob Ovrum jakobov...@gmail.com wrote:
On Friday, 4 May 2012 at 15:49:03 UTC, Manu wrote:
It's very counter intuitive to mark the _function_ ref, rather than it's
return type.
It is a function attribute, so it makes perfect sense. The rest is an
issue of
On Thursday, 3 May 2012 at 23:47:26 UTC, Trass3r wrote:
I'm interested in starting a project to make a linker besides
optlink for dmd on windows.
Imho changing dmd to use COFF (incl. 64 support) instead of
that crappy OMF would be more beneficial than yet another
linker.
My vision is to
On 04/05/2012 13:27, Steven Schveighoffer wrote:
On Fri, 04 May 2012 01:13:07 -0400, Mehrdad wfunct...@hotmail.com wrote:
Hmm... how exactly do you use RTInfo? (Is it usable yet? All I see is
a void* and a dummy template.)
You have to fill in object.di's RTInfo(T) to be whatever you want. As
On 05/04/2012 02:27 AM, Andrei Alexandrescu wrote:
FWIW it seemed to be just a configuration issue.
Perhaps not solved yet? I just hit the same problem about fifteen
minutes ago.
Ali
1 - 100 of 265 matches
Mail list logo