MethodDecl( Identifier idName, TypeSig tRetType, ParamVarDecl[] arParams, BlockStatement stmtBody, Modifiers mods ) { //m_strName = idName.Text; m_idName = idName; m_tRetType = tRetType; m_mods = mods; if (m_mods.IsAbstract && !m_mods.IsOverride) m_mods.SetVirtual(); m_arParams = (arParams != null) ? arParams : new ParamVarDecl[0]; m_stmtBody = stmtBody; Debug.Assert(m_idName != null); Debug.Assert((m_stmtBody != null) ^ mods.IsAbstract); Debug.Assert(m_arParams != null); // @todo - this is wrong m_filerange = idName.Location; }
MethodDecl( Identifier idName, TypeSig tRetType, ParamVarDecl[] arParams ) { //m_strName = idName.Text; m_idName = idName; m_tRetType = tRetType; m_mods = new Modifiers(); m_mods.SetAbstract(); m_mods.SetVirtual(); m_mods.SetPublic(); m_arParams = (arParams != null) ? arParams : new ParamVarDecl[0]; m_stmtBody = null; Debug.Assert(m_idName != null); Debug.Assert(m_arParams != null); // @todo - this is wrong m_filerange = idName.Location; }