public FFFunction(FFApp app, FFFile file, FFClass cls, CodeModel.Definitions.FunctionDefinition def) { #if DEBUG if (app == null) { throw new ArgumentNullException("app"); } if (file == null) { throw new ArgumentNullException("file"); } if (def == null) { throw new ArgumentNullException("def"); } #endif _app = app; _file = file; _class = cls; _name = def.Name; _sig = def.Signature; _span = new CodeModel.Span(def.SourceStartPos, def.SourceStartPos); _def = def; UpdateVisibility(); }
public void UpdateFromDefinition(CodeModel.Definitions.FunctionDefinition def) { #if DEBUG if (def == null) { throw new ArgumentNullException("def"); } if (def.DataType == null) { throw new ArgumentNullException("def.DataType"); } #endif _sig = def.Signature; _span = new CodeModel.Span(def.SourceStartPos, def.SourceStartPos); _def = def; UpdateVisibility(); }
public FFFunction(FFApp app, FFFile file, FFClass cls, SQLiteDataReader rdr) { #if DEBUG if (app == null) { throw new ArgumentNullException("app"); } if (file == null) { throw new ArgumentNullException("file"); } #endif _app = app; _file = file; _class = cls; _id = rdr.GetInt64(rdr.GetOrdinal("rowid")); _name = rdr.GetString(rdr.GetOrdinal("name")); _sig = FunctionSignature.ParseFromDb(rdr.GetString(rdr.GetOrdinal("sig"))); var devDescValue = rdr.GetStringOrNull(rdr.GetOrdinal("description")); if (devDescValue != null) { // TODO: Transitionary until the next database version if (_sig.Description == null) { _sig.Description = devDescValue; } } var fileName = _file.FileName; var altFileName = rdr.GetStringOrNull(rdr.GetOrdinal("alt_file_name")); if (!string.IsNullOrEmpty(altFileName)) { fileName = altFileName; } var pos = rdr.GetInt32(rdr.GetOrdinal("pos")); var filePos = new FilePosition(fileName, pos); _def = new CodeModel.Definitions.FunctionDefinition(_sig, filePos, 0, 0, 0, _span); UpdateVisibility(); }