public CefCallbackType(CefStructType parent, StructCategory category, string name, CefConfigData cefConfig, Parser.SignatureData sd, ApiTypeBuilder api, CommentData comments) : base(name) { this.Parent = parent; this.Comments = comments; if (cefConfig == null) { CefConfig = new CefConfigData(); } else { CefConfig = cefConfig; } if (category == StructCategory.ApiCallbacks) { m_callMode = CfxCallMode.Callback; this.Signature = Signature.Create(SignatureType.ClientCallback, this, sd, api); } else { m_callMode = CfxCallMode.FunctionCall; this.Signature = Signature.Create(SignatureType.LibraryCall, this, sd, api); } }
public CefCallbackFunction(CefStructType parent, StructCategory category, string name, CefConfigNode cefConfig, Parser.SignatureNode sd, ApiTypeBuilder api, CommentNode comments) { Name = name; this.Parent = parent; this.Comments = comments; if (cefConfig == null) { CefConfig = new CefConfigNode(); } else { CefConfig = cefConfig; } if (category == StructCategory.Client) { m_callMode = CfxCallMode.Callback; this.Signature = Signature.Create(SignatureType.ClientCallback, CefName, CefConfig, CallMode, sd, api); } else { m_callMode = CfxCallMode.FunctionCall; this.Signature = Signature.Create(SignatureType.LibraryCall, CefName, CefConfig, CallMode, sd, api); } }
private void BuildApiClasses(GeneratedFileManager fileManager, StructCategory category) { var b = new CodeBuilder(); foreach (var t in decls.CefStructTypes) { if (t.ClassBuilder.Category == category) { b.BeginCfxNamespace(); t.ClassBuilder.EmitPublicClass(b); b.EndBlock(); fileManager.WriteFileIfContentChanged(t.ClassName + ".cs", b.ToString()); b.Clear(); } } }
public StructMember(CefStructType parent, StructCategory structCategory, Parser.StructMemberData smd, ApiTypeBuilder api) { Debug.Assert(structCategory == StructCategory.Values); Debug.Assert(smd.MemberType != null); Name = smd.Name; Comments = smd.Comments; cefConfig = smd.CefConfig; MemberType = api.GetApiType(smd.MemberType, false); if (MemberType.Name == "int" && Comments != null) { foreach (var c in Comments.Lines) { if (c.Contains("true") || c.Contains("false")) { MemberType = BooleanInteger.Convert(MemberType); } } } }
protected CfxClass(CefStructType cefStruct, Parser.StructData sd, ApiTypeBuilder api) { CefStruct = cefStruct; OriginalSymbol = cefStruct.OriginalSymbol; CfxNativeSymbol = cefStruct.CfxNativeSymbol; CfxName = cefStruct.CfxName; ClassName = cefStruct.ClassName; ApiClassName = ClassName.Substring(3); RemoteClassName = cefStruct.RemoteClassName; Comments = sd.Comments; if (sd.CefConfig != null) { switch (sd.CefConfig.Source) { case "client": Category = StructCategory.ApiCallbacks; break; case "library": Category = StructCategory.ApiCalls; break; default: Debug.Assert(false); break; } } else { Debug.Assert(sd.StructMembers.Count == 1 || sd.StructMembers[1].CallbackSignature == null); Category = StructCategory.Values; } Debug.Assert(sd.CefFunctions.Count == 0 || Category == StructCategory.ApiCalls); }
public CefPlatformStructType(string name, StructCategory category, CefPlatform platform) : base(name + "_" + platform.ToString().ToLowerInvariant(), category) { this.Platform = platform; baseTypeName = name; }
public CefStructType(string name, StructCategory category) : base(name) { Category = category; }