ARSperl

 view release on metacpan or  search on metacpan

StructDef.pl  view on Meta::CPAN

	inputValueFieldPairs => {
		_type => 'ARFieldAssignList',
		_data => 'p->inputValueFieldPairs',
	},
	outputValueFieldPairs => {
		_type => 'ARFieldAssignList',
		_data => 'p->outputValueFieldPairs',
	},
	windowMode => {
		_max_version => '5.1.2',
		_map => {
			AR_ACTIVE_LINK_ACTION_OPEN_DLG           => "open_dlg",
			AR_ACTIVE_LINK_ACTION_OPEN_SEARCH        => "open_search",
			AR_ACTIVE_LINK_ACTION_OPEN_SUBMIT        => "open_submit",
			AR_ACTIVE_LINK_ACTION_OPEN_MODIFY_LST    => "open_modify_lst",
			AR_ACTIVE_LINK_ACTION_OPEN_MODIFY_DETAIL => "open_modify_detail",
			AR_ACTIVE_LINK_ACTION_OPEN_MODIFY_SPLIT  => "open_modify_split",
			AR_ACTIVE_LINK_ACTION_OPEN_DSPLY_LST     => "open_dsply_lst",
			AR_ACTIVE_LINK_ACTION_OPEN_DSPLY_DETAIL  => "open_dsply_detail",
			AR_ACTIVE_LINK_ACTION_OPEN_DSPLY_SPLIT   => "open_dsply_split",
			AR_ACTIVE_LINK_ACTION_OPEN_REPORT        => "open_report",
		},
		_type => 'int',
		_data => 'p->windowMode',
	},
	'windowMode+' => {
		_min_version => '6.0.0',
		_map => {
			AR_ACTIVE_LINK_ACTION_OPEN_DLG           => "open_dlg",
			AR_ACTIVE_LINK_ACTION_OPEN_SEARCH        => "open_search",
			AR_ACTIVE_LINK_ACTION_OPEN_SUBMIT        => "open_submit",
			AR_ACTIVE_LINK_ACTION_OPEN_MODIFY_LST    => "open_modify_lst",
			AR_ACTIVE_LINK_ACTION_OPEN_MODIFY_DETAIL => "open_modify_detail",
			AR_ACTIVE_LINK_ACTION_OPEN_MODIFY_SPLIT  => "open_modify_split",
			AR_ACTIVE_LINK_ACTION_OPEN_DSPLY_LST     => "open_dsply_lst",
			AR_ACTIVE_LINK_ACTION_OPEN_DSPLY_DETAIL  => "open_dsply_detail",
			AR_ACTIVE_LINK_ACTION_OPEN_DSPLY_SPLIT   => "open_dsply_split",
			AR_ACTIVE_LINK_ACTION_OPEN_REPORT        => "open_report",
			AR_ACTIVE_LINK_ACTION_OPEN_MODIFY        => "open_modify",
			AR_ACTIVE_LINK_ACTION_OPEN_DSPLY         => "open_dsply",
		},
		_type => 'int',
		_data => 'p->windowMode',
	},
	targetLocation => {
		_type => 'char *',
		_data => 'p->targetLocation',
	},
	query => {
		_type => 'ARQualifierStruct',
		_data => 'p->query',
	},
	noMatchContinue => {
		_map  => {
			FALSE => 'false',
			TRUE  => 'true',
		},
		_type => 'ARBoolean',
		_data => 'p->noMatchContinue',
	},
	suppressEmptyList => {
		_map  => {
			FALSE => 'false',
			TRUE  => 'true',
		},
		_type => 'ARBoolean',
		_data => 'p->suppressEmptyLst',
	},
	message => {
		_type => 'ARMessageStruct',
		_data => 'p->msg',
	},
	pollinginterval => {
		_type => 'ARULong32',
		_data => 'p->pollinginterval',
	},
	reportString => {
		_type => 'char *',
		_data => 'p->reportString',
	},
	sortOrderList => {
		_type => 'ARSortList',
		_data => 'p->sortOrderList',
	},
},
ARCloseWndStruct => {
	closeAll => {
		_map  => {
			FALSE => 'false',
			TRUE  => 'true',
		},
		_type => 'ARBoolean',
		_data => 'p->closeAll',
	},
},
ARCommitChangesStruct => {
	schemaName => {
		_type => 'ARNameType',
		_data => 'p->schemaName',
	},
},
ARCallGuideStruct => {
	serverName => {
		_type => 'ARServerNameType',
		_data => 'p->serverName',
	},
	guideName => {
		_type => 'ARNameType',
		_data => 'p->guideName',
	},
	guideMode => {
		_type => 'int',
		_data => 'p->guideMode',
	},
	loopTable => {
		_type => 'ARInternalId',
		_data => 'p->guideTableId',
	},
	inputValueFieldPairs => {
		_min_version => '6.0.0',
		_type => 'ARFieldAssignList',
		_data => 'p->inputValueFieldPairs',
	},
	outputValueFieldPairs => {
		_min_version => '6.0.0',
		_type => 'ARFieldAssignList',
		_data => 'p->outputValueFieldPairs',

StructDef.pl  view on Meta::CPAN

		_type => 'ARFieldAssignList',
		_data => 'p->fieldList',
	},
	sampleServer => {
		_type => 'ARServerNameType',
		_data => 'p->sampleServer',
	},
	sampleSchema => {
		_type => 'ARNameType',
		_data => 'p->sampleSchema',
	},
},
ARSQLStruct => {
	server => {
		_type => 'char[AR_MAX_SERVER_SIZE+1]',
		_data => 'p->server',
	},
	command => {
		_type => 'char *',
		_data => 'p->command',
	},
},
ARFilterActionNotifyAdvanced => {
	_min_version => '5.1.0',
	from => {
		_type => 'char *',
		_data => 'p->from',
	},
	replyTo => {
		_type => 'char *',
		_data => 'p->replyTo',
	},
	cc => {
		_type => 'char *',
		_data => 'p->cc',
	},
	bcc => {
		_type => 'char *',
		_data => 'p->bcc',
	},
	organization => {
		_type => 'char *',
		_data => 'p->organization',
	},
	mailboxName => {
		_type => 'char *',
		_data => 'p->mailboxName',
	},
	headerTemplate => {
		_type => 'char *',
		_data => 'p->headerTemplate',
	},
	footerTemplate => {
		_type => 'char *',
		_data => 'p->footerTemplate',
	},
	contentTemplate => {
		_type => 'char *',
		_data => 'p->contentTemplate',
	},
#	reserved1 => {
#		_type => 'ARULong32',
#		_data => 'p->reserved1',
#	},
#	reserved2 => {
#		_type => 'ARULong32',
#		_data => 'p->reserved2',
#	},
#	reserved3 => {
#		_type => 'ARULong32',
#		_data => 'p->reserved3',
#	},
},
AREscalationTmStruct => {
	_switch => 'p->escalationTmType',
	_case => {
		AR_ESCALATION_TYPE_INTERVAL => {
			exitGuide => {
				_type => 'ARLong32',
				_data => 'p->u.interval',
			},
		},
		AR_ESCALATION_TYPE_TIMEMARK => {
			exitGuide => {
				_type => 'ARDayStruct',
				_data => 'p->u.date',
			},
		},
	},
},
ARUnsignedIntList => {
	_num  => 'p->numItems',
	_list => 'p->intList',
	_type => 'unsigned int',
},

AREntryListFieldValueList => {
	_num  => 'p->numItems',
	_list => 'p->entryList',
	_type => 'AREntryListFieldValueStruct',
},
AREntryListFieldValueStruct => {
	entryId => {
		_type => 'AREntryIdList',
		_data => 'p->entryId',
	},
	entryValues => {
		_type => 'ARFieldValueList*',
		_data => 'p->entryValues',
	},
},
AREntryIdList => {
	_num  => 'p->numItems',
	_list => 'p->entryIdList',
	_type => 'AREntryIdType',
},
ARFieldValueList => {
	_num  => 'p->numItems',
	_list => 'p->fieldValueList',
	_type => 'ARFieldValueStruct',
},
ARFieldValueStruct => {
	fieldId => {
		_type => 'ARInternalId',
		_data => 'p->fieldId',
	},
	value => {
		_type => 'ARValueStruct',
		_data => 'p->value',
	},
},

StructDef.pl  view on Meta::CPAN

#	_list => 'p->workflowConnectList',
#	_type => 'ARWorkflowConnectStruct',
#},
#ARWorkflowConnectStruct => {
#	_switch => 'p->type',
#	_case    => {
#		AR_WORKFLOW_CONN_NONE => {
#			_default => 1,
#		},
#		AR_WORKFLOW_CONN_SCHEMA_LIST => {
#			schemaList => {
#				_type => 'ARNameList',
#				_data => 'p->u.schemaList',
#			},
#		},
#	},
#},
#ARReferenceStruct => {
#	label => {
#		_type => 'char *',
#		_data => 'p->label',
#	},
#	description => {
#		_type => 'char *',
#		_data => 'p->description',
#	},
#	type => {
#		_type => 'unsigned int',
#		_data => 'p->type',
#	},
#
#	_switch => 'p->reference.dataType',
#	_map => 'dataType',
#	_case => {
#		ARREF_DATA_ARSREF => {
#			'name' => {
#				_type => 'ARNameType',
#				_data => 'p->reference.u.name',
#			},
#		},
#		ARREF_DATA_EXTREF => {
#			'extRef' => {
#				_type => 'ARExtReferenceStruct',
#				_data => 'p->reference.u.extRef',
#			},
#		},
#	},
#},
#ARExtReferenceStruct => {
#	permittedGroups => {
#		_type => 'ARInternalIdList',
#		_data => 'p->permittedGroups',
#	},
#	value => {
#		_type => 'ARValueStruct',
#		_data => 'p->value',
#	},
#},


# Structures from "ardbc.h":
#ARVendorFieldList => {
#	_num  => 'p->numItems',
#	_list => 'p->fieldList',
#	_type => 'ARVendorFieldStruct',
#},
#ARVendorFieldStruct => {
#	fieldName => {
#		_type => 'ARNameType',
#		_data => 'p->fieldName',
#	},
#	fieldId => {
#		_type => 'ARInternalId',
#		_data => 'p->fieldId',
#	},
#	dataType => {
#		_type => 'int',
#		_data => 'p->dataType',
#	},
#},


);



# perl C:\usr\perl_install\5.8.8\ARSperl\TS\printStructTemplate.pl AR...
#
#	x => {
#		_type => '',
#		_data => '',
#	},

# s/.*/$& => {\n\t_type => '',\n\t_data => 'p->u.',\n},/


%TEMPLATES = (
	_copy => [
		'ARValueStruct'   => 'rev_%T( ctrl, h, k, "dataType", &(%L) )',
		'ARValueStruct\*' => '%L = MALLOCNN(sizeof(%B)); rev_%B( ctrl, h, k, "dataType", %L )',
		'AR\w+'   => 'rev_%T( ctrl, h, k, &(%L) )',
		'AR\w+\*' => '%L = MALLOCNN(sizeof(%B)); rev_%B( ctrl, h, k, %L )',
		'(int|long|unsigned\s+int|unsigned\s+long)' => '%L = SvIV(%R)',
		'(float|double)'                            => '%L = SvNV(%R)',
		'unsigned\s+char'                           => '%L = (char) SvIV(%R)',
		'char\s*\*' => '%L = strdup( SvPV_nolen(%R) )',
		'char\[.+]' => 'strncpy( %L, SvPV_nolen(%R), sizeof(%L) )',
		'ARInternalId\[(\w+)\]' => 'copyUIntArray( %1, %L, %R )',
		'int\[(\w+)\]'          => 'copyIntArray( %1, %L, %R )',
	],
	_perl => [
		'ARInternalId\[\]'     => '*** unknown ***',     # ???
		'ARInternalId\[\w+\]'  => '*** unknown ***',     # ???
		'int\[\w+\]'           => '*** unknown ***',     # ???
		'unsigned\s+char'      => '%L = newSVnv( %R )',  # ???
		
		'AR\w+'   => '%L = perl_%T( ctrl, &(%R) )',
		'AR\w+\*' => '%L = perl_%B( ctrl, %R )',
		'(int|long|unsigned\s+int|unsigned\s+long)' => '%L = newSViv( %R )',
		'(float|double)'                            => '%L = newSVnv( %R )',
		'char\s*\*' => '%L = newSVpv( %R, 0 )',



( run in 0.637 second using v1.01-cache-2.11-cpan-f56aa216473 )