{@link ngMock.$rootScope.Scope ngMock Scope} for additional * details. * * * @param {Object.=} providers Map of service factory which need to be * provided for the current scope. Defaults to {@link ng}. * @param {Object.=} instanceCache Provides pre-instantiated services which should * append/override services provided by `providers`. This is handy * when unit-testing and having the need to override a default * service. * @returns {Object} Newly created scope. * */ function Scope() { this.$id = nextUid(); this.$$phase = this.$parent = this.$$watchers = this.$$nextSibling = this.$$prevSibling = this.$$childHead = this.$$childTail = null; this.$root = this; this.$$destroyed = false; this.$$listeners = {}; this.$$listenerCount = {}; this.$$watchersCount = 0; this.$$isolateBindings = null; } /** * @ngdoc property * @name $rootScope.Scope#$id * * @description * Unique scope ID (monotonically increasing) useful for debugging. */ /** * @ngdoc property * @name $rootScope.Scope#$parent * * @description * Reference to the parent scope. */ /** * @ngdoc property * @name $rootScope.Scope#$root * * @description * Reference to the root scope. */ Scope.prototype = { constructor: Scope, /** * @ngdoc method * @name $rootScope.Scope#$new * @kind function * * @description * Creates a new child {@link ng.$rootScope.Scope scope}. * * The parent scope will propagate the {@link ng.$rootScope.Scope#$digest $digest()} event. * The scope can be removed from the scope hierarchy using {@link ng.$rootScope.Scope#$destroy $destroy()}. * * {@link ng.$rootScope.Scope#$destroy $destroy()} must be called on a scope when it is * desired for the scope and its child scopes to be permanently detached from the parent and * thus stop participating in model change detection and listener notification by invoking. * * @param {boolean} isolate If true, then the scope does not prototypically inherit from the * parent scope. The scope is isolated, as it can not see parent scope properties. * When creating widgets, it is useful for the widget to not accidentally read parent * state. * * @param {Scope} [parent=this] The {@link ng.$rootScope.Scope `Scope`} that will be the `$parent` * of the newly created scope. Defaults to `this` scope if not provided. * This is used when creating a transclude scope to correctly place it * in the scope hierarchy while maintaining the correct prototypical * inheritance. * * @returns {Object} The newly created child scope. * */ $new: function(isolate, parent) { var child; parent = parent || this; if (isolate) { child = new Scope(); child.$root = this.$root; } else { // Only create a child scope class if somebody asks for one, // but cache it to allow the VM to optimize lookups. if (!this.$$ChildScope) { this.$$ChildScope = createChildScopeClass(this); } child = new this.$$ChildScope(); } child.$parent = parent; child.$$prevSibling = parent.$$childTail; if (parent.$$childHead) { parent.$$childTail.$$nextSibling = child; parent.$$childTail = child; } else { parent.$$childHead = parent.$$childTail = child; } // When the new scope is not isolated or we inherit from `this`, and // the parent scope is destroyed, the property `$$destroyed` is inherited // prototypically. In all other cases, this property needs to be set // when the parent scope is destroyed. // The listener needs to be added after the parent is set if (isolate || parent != this) child.$on('$destroy', destroyChildScope); return child; }, /** * @ngdoc method * @name $rootScope.Scope#$watch * @kind function * * @description * Registers a `listener` callback to be executed whenever the `watchExpression` changes. * * - The `watchExpression` is called on every call to {@link ng.$rootScope.Scope#$digest * $digest()} and should return the value that will be watched. (Since * {@link ng.$rootScope.Scope#$digest $digest()} reruns when it detects changes the * `watchExpression` can execute multiple times per * {@link ng.$rootScope.Scope#$digest $digest()} and should be idempotent.) * - The `listener` is called only when the value from the current `watchExpression` and the * previous call to `watchExpression` are not equal (with the exception of the initial run, * see below). Inequality is determined according to reference inequality, * [strict comparison](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comparison_Operators) * via the `!==` Javascript operator, unless `objectEquality == true` * (see next point) * - When `objectEquality == true`, inequality of the `watchExpression` is determined * according to the {@link angular.equals} function. To save the value of the object for * later comparison, the {@link angular.copy} function is used. This therefore means that * watching complex objects will have adverse memory and performance implications. * - The watch `listener` may change the model, which may trigger other `listener`s to fire. * This is achieved by rerunning the watchers until no changes are detected. The rerun * iteration limit is 10 to prevent an infinite loop deadlock. * * * If you want to be notified whenever {@link ng.$rootScope.Scope#$digest $digest} is called, * you can register a `watchExpression` function with no `listener`. (Since `watchExpression` * can execute multiple times per {@link ng.$rootScope.Scope#$digest $digest} cycle when a * change is detected, be prepared for multiple calls to your listener.) * * After a watcher is registered with the scope, the `listener` fn is called asynchronously * (via {@link ng.$rootScope.Scope#$evalAsync $evalAsync}) to initialize the * watcher. In rare cases, this is undesirable because the listener is called when the result * of `watchExpression` didn't change. To detect this scenario within the `listener` fn, you * can compare the `newVal` and `oldVal`. If these two values are identical (`===`) then the * listener was called due to initialization. * * * * # Example * ```js // let's assume that scope was dependency injected as the $rootScope var scope = $rootScope; scope.name = 'misko'; scope.counter = 0; expect(scope.counter).toEqual(0); scope.$watch('name', function(newValue, oldValue) { scope.counter = scope.counter + 1; }); expect(scope.counter).toEqual(0); scope.$digest(); // the listener is always called during the first $digest loop after it was registered expect(scope.counter).toEqual(1); scope.$digest(); // but now it will not be called unless the value changes expect(scope.counter).toEqual(1); scope.name = 'adam'; scope.$digest(); expect(scope.counter).toEqual(2); // Using a function as a watchExpression var food; A2/" target="_blank" title="中央打虎">中央打虎 投资者 股票行情
您的位置:财股网 > 理财 > 信托 > 正文

信托制度优化 难行却必行的一里路

股票行情  www.caiguu.com  发布时间:2016-02-23  文章来源:华夏理财  责任编辑:李之忻
摘要:近年来富裕阶层人士增加,家族信托或各类家族财富管理的服务也随之兴起,创富、守富、传富的观念琅琅上口,但真正想让家族财富管理落地,信托登记制度必须完备。 中国银监会日前提出,将设立中国信托登记有限责任公司,建立信托产品统一登记制度。在2016年伊...

  近年来富裕阶层人士增加,家族信托或各类家族财富管理的服务也随之兴起,“创富、守富、传富”的观念琅琅上口,但真正想让家族财富管理落地,信托登记制度必须完备。

  中国银监会日前提出,将设立中国信托登记有限责任公司,建立信托产品统一登记制度。在2016年伊始,这个消息让人眼睛为之一亮,对于信托市场的发展,也产生了某种期待。

  当银监会的消息一发布,诸多专家认为,此举不仅将为信托业健康发展提供重要的基础性制度平台,也有利于保障信托各方当事人权益,将进一步提高信托产品公信力。

  信托制度优化之路漫漫

  据了解,业内一直呼吁建立信托登记制度,相关人士很早就开始在信托登记方面进行探索。2006年,中国银监会批准在上海浦东新区设立上海信托登记中心,进行信托基本信息登记等试点。2014年,上海自贸区管委会发布《信托登记试行办法》,推动在自贸区建立和完善信托登记平台。

  另外中国《信托法》第10条规定:“设立信托,对于信托财产,有关法律、行政法规规定应当办理登记手续的,应当依法办理信托登记。未依照前款规定办理信托登记的,应当补办登记手续;不补办的,该信托不产生效力。”

  依照该项规定,进行登记的信托,以财产转移是否需要登记为标准;财产转移需要登记的,以该财产设立的信托则需要登记(例如土地使用权和房屋所有权、船舶、股票、股权、商标权、专利权等),如果财产转移不需要登记的,以该项财产设立的信托也不需要进行登记。

  此外,在效力方面,如果未按规定办理信托登记,该信托不产生效力。不产生效力则意味着信托法律关系在当事人之间尚未建立,各方之间的权利义务关系也不能够按照《信托法》进行调整。但是,信托不产生效力并不意味着对当事人没有任何意义。换言之,信托即使未登记,但如果经委托人和受托人协商一致订立了信托合同,则信托成立。

  然而应该注意的是,若欲发展健全的财富管理业务与市场,现行信托制度的改革势在必行;而信托登记制度的建立,更是中国信托实践过程中的重中之重。

  自2001年《信托法》颁布实施以来,信托业务在中国有了飞跃的发展。然而信托登记配套制度的缺失,使财产类信托难于开展,也同时制约了信托业的发展。首先,由于信托登记配套制度的缺失,使信托公司不约而同地选择了资金信托,信托品种过于单一,没有充分发挥信托弹性设计空间的优越性。此外,也增加了信托当事各方设立信托的成本,妨碍了信托领域的创新。

  相比之下,台湾的信托发展相对早些,始自1996年。台湾方面为保护受益人或其他权利归属人之利益,对于信托财产的独立性设有规范。

  台湾的《信托法》第4条规定了信托公示制度,要求以某些财产设立信托时,应当按照法律的规定及时履行一定的公示程序。其中条文的规定很清楚,表明信托登记是对抗要件,而不是信托的成立要件。而台湾所采取的对抗主义的登记制度,既保护了交易安全,同时相对于登记生效主义的制度,又不会由于信托当事人偶然的疏忽而导致大量的信托行为的无效,有利于发挥信托的独特功能。

  难行却必行的一里路

  信托登记制度究竟有多重要?近年来富裕阶层人士增加,家族信托或各类家族财富管理的服务也随之兴起,“创富、守富、传富”的观念琅琅上口,但真正想让家族财富管理落地,信托登记制度必须完备。

  不容讳言者,家族财富管理根植于个人信托,因为信托制度的弹性灵活,加上信托效力不受信托主体的破产、身故等事件影响,在家族财富管理领域有较大运用空间。

  观察过往中国的信托发展轨迹,信托登记制度尚未全面建置以前,家族财富中的非资金的财产信托无法产生效力,某种程度上阻碍了家族财富管理的发展。除此之外,若要追本溯源,这也是因为中国的信托架构大抵仍以投融资渠道为设计概念。而信托业管理法规也是以资金信托为中心进行构建,与其他信托前沿国家的思考有所差异,加上所有权采取社会主义公有制的缘故,在信托登记制度的设计上也无法完全比照其他国家。

  但是问题在于,中国法制属于欧陆法系,在引入信托制度之后却回避了如何界定受益权(衡平所有权)的问题。在“一物权”的法系下,受益权何时能定性取决于立法者的态度。令人惋惜的是,信托在中国是一项特许经营权,公司过去和未来很长一段时间享受着制度红利—信托公司是唯一可以参与货币市场、资本市场和产业的金融机构,理应透过更完备的信托登记制度推动财富管理的发展脚步。

  回顾2014年9月,上海自贸区管委会下发《信托登记试行办法》,力图在自贸区探索信托登记平台和信托受益权流转机制。次月,银监会正式批准全国信托登记中心落户上海自贸区。此后全国信托登记中心初步形成信托登记等操作方案,比如在客户准入门槛方面,要求合格投资者的最低投资额度不低于100万元,且需在信托公司开户。诸如此类举措,表明信托登记制度正在稳步推进,然而未来应正视信托制度(尤其是信托登记制度)对于个人或家族财富管理市场的影响,迈出难行却又必然要行的一里路。

让更多人知道事件的真相,把本文分享给好友:
更多
财股网声明:本文仅代表作者个人观点,不代表财股网立场,其原创性及文中内容未经证实,仅供参考,据此入市,风险自担。若该资讯与原文有异,概以原文为准。如果您对以上信息有任何疑问或因我们的工作疏忽,在作品内容,版权或其它问题有异议需要同本站联系的,请及时联络我们。财股网拥有本声明最终解释权。

上一篇:谋转型 信托“卡位”新三板

下一篇:鑫琦资产兑付危机调查:把房产当基础资产“拆分”