📄 todo
字号:
Combined list of things to-do and things to think about-------------------------------------------------------* It's possible to contrive IDL examples which clash with internal names: exception e{ long pd_insertToAnyFn; // names inherited from CORBA::Exception long pd_insertToAnyFnNCP; // and not private long insertExceptionToAny; }; A suitable fix is to _ prefix the internal names, but the changes will ripple outwards from the IDL compiler through include/omniORB3/CORBA.h Of course it is still possible to contrive IDL examples which don't map properly onto C++ at all: interface T {}; interface T_var {};* Slight assymmetry in call desc unmarshalling code (positions where temp variables are declared seems to vary)* Unify string marshalling/ unmarshalling- why is it sometimes done through a String_member and sometimes done at the char level? -- Apparently this was a changeover which was never 100% completed.* Surely a return value is semantically identical to an out argument value? Why does it become a special case in the marshalling routines?* Perhaps we could simplify handling of anonymous sequences etc by introducing (internal) typedefs?* Would it be possible/ easier to remove need to consider declarators when looking at an object's type? (Maybe this is a just personal dislike of C/ C++ / IDL declarator syntax) Shouldn't a type be a simple structure t = Sequence of (Array of (Array of (Alias of (Struct foo)))) and be independent of it's actual _name(s)_. Perhaps make functions marshal : fn Type -> Function block and store a hashtable of functions available to promote reuse? Or could expand each inline for speed? Perhaps create a type class with appropriate constructors (taking types and optional declarators) which contains the marshalling, unmarshalling and alignment code?
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -