tsioc
Version:
tsioc is AOP, Ioc container, via typescript decorator
109 lines (108 loc) • 2.1 kB
TypeScript
import { IJoinpoint } from './IJoinpoint';
import { Type } from '../../types';
import { MethodMetadata } from '../../core/index';
import { JoinpointState } from './JoinpointState';
import { IParameter } from '../../IParameter';
import { Advicer } from '../advices/index';
/**
* Join point data.
*
* @export
* @class Joinpoint
* @implements {IJoinpoint}
*/
export declare class Joinpoint implements IJoinpoint {
/**
* method name
*
* @type {string}
* @memberof Joinpoint
*/
name: string;
/**
* prov joinpoint.
*
* @type {IJoinpoint}
* @memberof Joinpoint
*/
provJoinpoint: IJoinpoint;
/**
* full name.
*
* @type {string}
* @memberof Joinpoint
*/
fullName: string;
/**
* join point state.
*
* @type {JoinpointState}
* @memberof Joinpoint
*/
state: JoinpointState;
/**
* params of pointcut.
*
* @type {IParameter[]}
* @memberof Joinpoint
*/
params: IParameter[];
/**
* args of pointcut.
*
* @type {any[]}
* @memberof Joinpoint
*/
args: any[];
/**
* pointcut returing
*
* @type {*}
* @memberof Joinpoint
*/
returning?: any;
/**
* the result value of returing.
*
* @type {*}
* @memberof Joinpoint
*/
returningValue?: any;
/**
* pointcut throwing error.
*
* @type {*}
* @memberof Joinpoint
*/
throwing?: any;
/**
* advicer of joinpoint
*
* @type {Advicer}
* @memberof Joinpoint
*/
advicer: Advicer;
/**
* orgin pointcut method metadatas.
*
* @type {MethodMetadata[]}
* @memberof Joinpoint
*/
annotations: MethodMetadata[];
/**
* pointcut target instance
*
* @type {*}
* @memberof Joinpoint
*/
target: any;
/**
* pointcut target type.
*
* @type {Type<any>}
* @memberof Joinpoint
*/
targetType: Type<any>;
constructor(options: IJoinpoint);
static classAnnations: any;
}