Complete the Tera template scaffolding for all 8 subprocess-based SDKs
under templates/sdk-skeleton/<lang>/: node, go, java, dotnet, ruby,
php, swift, python-subprocess.
Each template directory contains:
- Package metadata template (package.json, go.mod, pom.xml, etc.)
- Method stubs template (methods.ts, client.go, Methods.java, etc.)
- Error stubs template (errors.ts, errors.go, Errors.java, etc.)
- Conformance runner template (conformance.test.ts, etc.)
- README template with {{ version }} variable substitution
- GENERATED.tera marker file
New files for python-subprocess:
- pdftract_subprocess/codegen/errors.py.tera
- tests/codegen/conformance_test.py.tera
- README.md.tera
- GENERATED.tera
All 8 language template directories are now complete and ready for
consumption by the `pdftract sdk codegen` subcommand.
Co-Authored-By: Claude Code <noreply@anthropic.com>
59 lines
1.4 KiB
Text
59 lines
1.4 KiB
Text
namespace Pdftract.Codegen;
|
|
|
|
/// <summary>
|
|
/// This file is auto-generated. Do not edit manually.
|
|
/// </summary>
|
|
|
|
public class PdftractException : Exception
|
|
{
|
|
public int ExitCode { get; }
|
|
|
|
public PdftractException(string message, int exitCode) : base(message)
|
|
{
|
|
ExitCode = exitCode;
|
|
}
|
|
|
|
public PdftractException(string message, int exitCode, string? stderr)
|
|
: base(message + (stderr != null ? $": {stderr}" : ""))
|
|
{
|
|
ExitCode = exitCode;
|
|
}
|
|
}
|
|
|
|
{% for error in errors %}
|
|
{% if error.exit_code != 0 and error.exit_code != 10 %}
|
|
/// <summary>
|
|
/// {{ error.description }}
|
|
/// </summary>
|
|
public class {{ error.exception_name }} : PdftractException
|
|
{
|
|
public {{ error.exception_name }}(string message, int exitCode) : base(message, exitCode)
|
|
{
|
|
}
|
|
|
|
public {{ error.exception_name }}(string message, int exitCode, string? stderr)
|
|
: base(message, exitCode, stderr)
|
|
{
|
|
}
|
|
}
|
|
{% endif %}
|
|
{% endfor %}
|
|
|
|
{% for error in errors %}
|
|
{% if error.exit_code == 10 %}
|
|
/// <summary>
|
|
/// {{ error.description }}
|
|
/// </summary>
|
|
public class {{ error.exception_name }} : PdftractException
|
|
{
|
|
public {{ error.exception_name }}(string message, int exitCode) : base(message, exitCode)
|
|
{
|
|
}
|
|
|
|
public {{ error.exception_name }}(string message, int exitCode, string? stderr)
|
|
: base(message, exitCode, stderr)
|
|
{
|
|
}
|
|
}
|
|
{% endif %}
|
|
{% endfor %}
|