public inbox for [email protected]  
help / color / mirror / Atom feed
From: Nathan Bossart <[email protected]>
To: Shmuel Kamensky <[email protected]>
Cc: [email protected]
Subject: Re: C++ Trigger Framework
Date: Tue, 22 Feb 2022 13:07:16 -0800
Message-ID: <20220222210716.GA45420@nathanxps13> (raw)
In-Reply-To: <CAFOdk+Auz30nYtqsvNYwk-ZdjULbS7hdFxxB3nTTymDhmxLErw@mail.gmail.com>
References: <CAFOdk+Auz30nYtqsvNYwk-ZdjULbS7hdFxxB3nTTymDhmxLErw@mail.gmail.com>

On Tue, Feb 22, 2022 at 04:02:39PM +0200, Shmuel Kamensky wrote:
> I'm interested in creating a Postgres extension that would enable
> developers to write triggers in (modern) C++. Does anyone know if there is
> already some sort of translation wrapper between the native Postgres C
> API's and C++? Or if there's already a project that allows for writing
> triggers in C++ with ease?
> I see that https://github.com/clkao/plv8js-clkao/blob/master/plv8_type.cc
> does implement an abstraction of sorts, but it's specific to v8 types and
> is not genericized as a way of interacting with Postgres C API's from C++
> from *an*y C++ code.
> 
> Can you imagine any potential technical challenges I may encounter (e.g.
> massaging postgres' custom allocator to work with C++'s new and delete
> operators, or unresolvable compiler incompatibilities)?

This might answer your questions:

	https://www.postgresql.org/docs/devel/xfunc-c.html#EXTEND-CPP

-- 
Nathan Bossart
Amazon Web Services: https://aws.amazon.com






view thread (2+ messages)

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected]
  Subject: Re: C++ Trigger Framework
  In-Reply-To: <20220222210716.GA45420@nathanxps13>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox