MetaProgrammingLibrary

Description

A library to generate / transform Pharo code.

Details

Source
GitHub
Dialect
pharo (25% confidence)
License
MIT
Stars
1
Forks
1
Created
May 8, 2019
Updated
Oct. 9, 2019

README excerpt

# MetaProgrammingLibrary
A library to generate / transform Pharo code.

## Batch class renaming

```st
MPLBatchClassesPrefixRename new
	classes: {ABClass1 . ABClass2. ABClass3};
	oldPrefix: 'AB';
	newPrefix: 'DE';
	generate
```

Will rename `ABClass1, ABClass2, ABClass3` as respectively `DEClass1 . DEClass2. DEClass3`.

## Constructor generator

```st
MPLConstructorGenerator new
	targetClass: Person;
	mutatorSelectors: { #name:. #age: };
	createDummyParameterNames;
	generate.
```

Will generate the following method:

```st
Person class>>name: name age: age
	^ self new
		name: name;
		age: age;
		yourself
```

## Visitor design pattern

```st
MPLVisitorGenerator new
	visitorClass: VisitorClass;
	visitedClasses: { VisitedClass1 . VisitedClass2 . VisitedClass3 };
	generate.
```
← Back to results