From c164cf21a0c3b0623d258240d66bbade73e97255 Mon Sep 17 00:00:00 2001 From: Maximiliano Korp Date: Wed, 12 Nov 2014 10:40:01 -0700 Subject: [PATCH 1/2] add a colision handler for method names --- generate/descriptor.json | 4 +--- generate/utils.js | 14 ++++++++++++++ lib/repository.js | 2 +- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/generate/descriptor.json b/generate/descriptor.json index 6ec7ad6f1..e8e103549 100644 --- a/generate/descriptor.json +++ b/generate/descriptor.json @@ -986,9 +986,7 @@ "ignore": true }, "git_revwalk_new": { - "isAsync": false, - "jsFunctionName": "createRevwalk", - "cppFunctionName": "CreateRevwalk" + "isAsync": false } } }, diff --git a/generate/utils.js b/generate/utils.js index 07f38922a..5f84a542b 100644 --- a/generate/utils.js +++ b/generate/utils.js @@ -23,6 +23,10 @@ var cTypeMappings = { "uint64_t": "Number" } +var collisionMappings = { + "new": "create" +} + var Utils = { titleCase: function(str) { return str.split(/_|\//).map(function(val, index) { @@ -318,6 +322,16 @@ var Utils = { Utils.decorateArg(fnDef.return, classDef, fnDef, fnOverrides.return || {}); } + _(collisionMappings).forEach(function(newName, collidingName) { + if (fnDef.cppFunctionName == Utils.titleCase(collidingName)) { + fnDef.cppFunctionName = Utils.titleCase(newName); + } + + if (fnDef.jsFunctionName == Utils.camelCase(collidingName)) { + fnDef.jsFunctionName = Utils.camelCase(newName); + } + }); + _.merge(fnDef, _.omit(fnOverrides, "args", "return")); }, diff --git a/lib/repository.js b/lib/repository.js index c9fdc792a..f923d1b33 100644 --- a/lib/repository.js +++ b/lib/repository.js @@ -183,7 +183,7 @@ Repository.prototype.getTag = function(oid, callback) { * @return {RevWalk} */ Repository.prototype.createRevWalk = function() { - var revWalk = Revwalk.createRevwalk(this); + var revWalk = Revwalk.create(this); revWalk.repo = this; return revWalk; }; From 79ce75639e8fbcb85ae0a035355e8732bd0d03b0 Mon Sep 17 00:00:00 2001 From: Maximiliano Korp Date: Wed, 12 Nov 2014 10:47:07 -0700 Subject: [PATCH 2/2] rename Initialize to InitializeComponent --- generate/manual/include/wrapper.h | 2 +- generate/manual/src/wrapper.cc | 10 +++++----- generate/templates/class_content.cc | 4 ++-- generate/templates/class_header.h | 2 +- generate/templates/nodegit.cc | 4 ++-- generate/templates/struct_content.cc | 2 +- generate/templates/struct_header.h | 2 +- 7 files changed, 13 insertions(+), 13 deletions(-) diff --git a/generate/manual/include/wrapper.h b/generate/manual/include/wrapper.h index 5cb98063e..32b07ce26 100644 --- a/generate/manual/include/wrapper.h +++ b/generate/manual/include/wrapper.h @@ -17,7 +17,7 @@ class Wrapper : public ObjectWrap { public: static Persistent constructor_template; - static void Initialize (Handle target); + static void InitializeComponent (Handle target); void *GetValue(); static Handle New(void *raw); diff --git a/generate/manual/src/wrapper.cc b/generate/manual/src/wrapper.cc index ac719d464..4b32340ff 100644 --- a/generate/manual/src/wrapper.cc +++ b/generate/manual/src/wrapper.cc @@ -15,14 +15,14 @@ Wrapper::Wrapper(void *raw) { this->raw = raw; } -void Wrapper::Initialize(Handle target) { +void Wrapper::InitializeComponent(Handle target) { NanScope(); Local tpl = NanNew(New); tpl->InstanceTemplate()->SetInternalFieldCount(1); tpl->SetClassName(NanNew("Wrapper")); - + NODE_SET_PROTOTYPE_METHOD(tpl, "toBuffer", ToBuffer); NanAssignPersistent(constructor_template, tpl); @@ -44,12 +44,12 @@ NAN_METHOD(Wrapper::New) { Handle Wrapper::New(void *raw) { NanEscapableScope(); - + Handle argv[1] = { NanNew((void *)raw) }; Local instance; Local constructorHandle = NanNew(constructor_template); instance = constructorHandle->GetFunction()->NewInstance(1, argv); - + return NanEscapeScope(instance); } @@ -67,7 +67,7 @@ NAN_METHOD(Wrapper::ToBuffer) { int len = args[0]->ToNumber()->Value(); Local bufferConstructor = Local::Cast( - NanGetCurrentContext()->Global()->Get(NanNew("Buffer"))); + NanGetCurrentContext()->Global()->Get(NanNew("Buffer"))); Handle constructorArgs[1] = { NanNew(len) }; Local nodeBuffer = bufferConstructor->NewInstance(1, constructorArgs); diff --git a/generate/templates/class_content.cc b/generate/templates/class_content.cc index 5410c2021..a4be2bf63 100644 --- a/generate/templates/class_content.cc +++ b/generate/templates/class_content.cc @@ -38,7 +38,7 @@ using namespace node; {%endif%} } -void {{ cppClassName }}::Initialize(Handle target) { +void {{ cppClassName }}::InitializeComponent(Handle target) { NanScope(); Local tpl = NanNew(New); @@ -98,7 +98,7 @@ Handle {{ cppClassName }}::New(void *raw, bool selfFreeing) { return &this->raw; } {%else%} -void {{ cppClassName }}::Initialize(Handle target) { +void {{ cppClassName }}::InitializeComponent(Handle target) { NanScope(); Local object = NanNew(); diff --git a/generate/templates/class_header.h b/generate/templates/class_header.h index e57afea32..ab0615362 100644 --- a/generate/templates/class_header.h +++ b/generate/templates/class_header.h @@ -33,7 +33,7 @@ class {{ cppClassName }} : public ObjectWrap { public: static Persistent constructor_template; - static void Initialize (Handle target); + static void InitializeComponent (Handle target); {%if cType%} {{ cType }} *GetValue(); diff --git a/generate/templates/nodegit.cc b/generate/templates/nodegit.cc index 73ad8b545..4d6147899 100644 --- a/generate/templates/nodegit.cc +++ b/generate/templates/nodegit.cc @@ -12,9 +12,9 @@ extern "C" void init(Handle target) { NanScope(); - Wrapper::Initialize(target); + Wrapper::InitializeComponent(target); {%each%} - {{ cppClassName }}::Initialize(target); + {{ cppClassName }}::InitializeComponent(target); {%endeach%} } diff --git a/generate/templates/struct_content.cc b/generate/templates/struct_content.cc index 497ae0d15..530131dfe 100644 --- a/generate/templates/struct_content.cc +++ b/generate/templates/struct_content.cc @@ -75,7 +75,7 @@ void {{ cppClassName }}::ConstructFields() { {%endeach%} } -void {{ cppClassName }}::Initialize(Handle target) { +void {{ cppClassName }}::InitializeComponent(Handle target) { NanScope(); Local tpl = NanNew(New); diff --git a/generate/templates/struct_header.h b/generate/templates/struct_header.h index 183254af6..39ac6a7af 100644 --- a/generate/templates/struct_header.h +++ b/generate/templates/struct_header.h @@ -22,7 +22,7 @@ class {{ cppClassName }} : public ObjectWrap { public: {{ cppClassName }}({{ cType }}* raw, bool selfFreeing); static Persistent constructor_template; - static void Initialize (Handle target); + static void InitializeComponent (Handle target); {{ cType }} *GetValue(); {{ cType }} **GetRefValue();