Thanks Ben ! Thanks Corey !

You're my heroes !

BWT way, its's not ->ToFunction but ->GetFunction :

oProt->Set (String::New("ToJSON"),
FunctionTemplate::New(::ToJSON)->GetFunction(), DontEnum);


Regards,
Florent Steiner


On Mon, Oct 13, 2008 at 5:21 PM, Ben Nolan <[EMAIL PROTECTED]> wrote:

>  oProt->Set (String::New("ToJSON"),
> FunctionTemplate::New(::ToJSON)->ToFunction(), DontEnum);
>
>
> Might do it.
> Ben
>
>
> On 14/10/2008, at 4:12 AM, Florent Steiner wrote:
>
> Hi corey !
>
> I've tried that :
>
>     Handle<Value> oVal = _context->Global ()->Get (String::New ("object"));
>     if (oVal->IsObject ())
>     {
>         Handle<Object> o = Handle<Object>::Cast (oVal);
>
>         Handle<Object> oProt = Handle<Object>::Cast (o->GetPrototype ());
>
>         oProt->Set (String::New("ToJSON"), FunctionTemplate::New(::ToJSON),
> DontEnum);
>     }
>
> But I got this error when I compile :
>
> 1>c:\msdev6\myprojects\jss\jss\..\V8\include\v8.h(198) : error C2440: '=' :
> cannot convert from 'v8::FunctionTemplate *' to 'v8::Value *'
> 1>        Types pointed to are unrelated; conversion requires
> reinterpret_cast, C-style cast or function-style cast
> 1>        .\JSS.cpp(64) : see reference to function template instantiation
> 'v8::Handle<T>::Handle<v8::FunctionTemplate>(v8::Handle<v8::FunctionTemplate>)'
> being compiled
> 1>        with
> 1>        [
> 1>            T=v8::Value
> 1>        ]
>
> Best regards,
> Florent Steiner
>
>
> On Mon, Oct 13, 2008 at 4:54 PM, corey <[EMAIL PROTECTED]> wrote:
>
>>
>> If you have a handle to an object you can add a c++ function to the
>> prototype like this:
>>
>> object->GetPrototype()->Set(
>>  String::New("Name_Of_Function"),
>>  FunctionTemplate::New(pointer_to_c++_function));
>>
>> If you want to add the function with the implementation being handled
>> in javascript then you could do something along these lines:
>>
>> Script::Compile(String::New("Object.prototype.myFunc = function ()
>> { ... }"))->Run();
>>
>>
>>
>> Corey
>>
>> On Oct 12, 5:35 pm, Florent Steiner <[EMAIL PROTECTED]> wrote:
>> > Wow, I'm totaly lost, there.
>> >
>> > I would like to extend the Object prototype like this :
>> >
>> > Object.prototype.myFunc = function () {
>> > ...
>> >
>> > }
>> >
>> > But I don't know how to do so in C++ :(
>> >
>> > Could somebody help me ?
>> >
>> > Regards,
>> > Florent Steiner
>>
>>
>
>
>
>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users
-~----------~----~----~----~------~----~------~--~---

Reply via email to