Embeddinator-4000/objcgen
William Kent 7604f2477b Fix objcgen Makefile 2017-11-15 11:51:01 -05:00
..
script Simple Packaging and Installer Scripts (#258) 2017-05-03 19:04:16 -04:00
.gitignore Simple Packaging and Installer Scripts (#258) 2017-05-03 19:04:16 -04:00
EqualsHelper.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
ErrorHelper.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
HashHelper.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
Make.config [objc] Update the Mono runtime max version build check. 2017-08-16 12:34:14 +01:00
Makefile Fix objcgen Makefile 2017-11-15 11:51:01 -05:00
NameGenerator.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
README.md [docs] Update docs to reference the new naming. 2017-08-16 12:34:14 +01:00
classhelper.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
comparablehelper.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
driver.cs [objc] Extension use support (#540) 2017-11-08 22:19:10 +00:00
error.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
extensions.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
generate-version.sh [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
generator.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
methodhelper.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
objcgen.csproj [objc] Switch projects to use IKVM.Reflection reference. 2017-08-18 13:55:34 +01:00
objcgenerator-helpers.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
objcgenerator-postprocessor.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
objcgenerator-processor.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
objcgenerator-subscripts.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
objcgenerator.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
objcprocessor.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
operatoroverloads.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
packages.config [objc] Use Mono.Options. (#36) 2017-03-31 13:17:05 -05:00
processedtypes.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
processor.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
protocolhelper.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
sourcewriter.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
system-check.cs [objc] Switch code to use an Embeddinator.ObjC namespace. 2017-08-18 13:55:39 +01:00
system-dependencies.sh [ci] Retry downloading system depedendencies when provisioning. 2017-05-10 20:33:50 +01:00
thin-framework.sh [git] Merge tip of objc branch into master. 2017-05-04 23:54:32 +01:00

README.md

ObjC generator

Build

Simply run make in Embeddinator-4000/objcgen.

Run

Don't use Embeddinator-4000.exe.

Use mono ./bin/Debug/objcgen.exe --gen=Obj-C -o ./Output ManagedAssembly1.dll.

Generated API of questionable usability

Whenever we generate a working API that is not optimal (in ObjC) we should update the docs/BestPracticesObjC.md document to explain the situation and provide guidance to get the best ObjC API output.

Missing .NET features

Unimplemented, but planned, features should throw a NotImplementedException with the feature name. The generator will report it as a missing feature that does not require a bug report (and test case).

Unsupported .NET features

Anything that cannot be supported should be added to the docs/Limitations.md document.

The tool should issue warnings (which users can turn into errors) when it cannot generate ObjC to match any given .NET code. The warnings must be added to the docs/errors.md document.